選單列表是列表檢視的擴充功能。與一般的連結列表不同,選單列表旨在指示應用程式目前活躍的螢幕(或區段)。可以把它想像成一個標籤列,但以列表的形式呈現。
包含以下組件
MenuList
- 選單列表組件MenuListItem
- 選單列表項目元素MenuList
組件沒有特定的屬性,但由於它擴充了List
組件,它支援所有List
屬性
MenuListItem
組件擴充了ListItem
組件,它支援所有ListItem
屬性以及以下額外的屬性
名稱 | 類型 | 預設值 | 描述 |
---|---|---|---|
active | 布林值 | false | 使選單列表項目高亮顯示(活躍狀態) |
href | 字串 | 布林值 | 選單列表項目連結的 | |
media | ReactNode | 晶片媒體區域的內容(例如,圖示) | |
subtitle | ReactNode | 選單列表項目「副標題」區域的內容 |
import React, { useState } from 'react';import {Page,Navbar,NavbarBackLink,Block,MenuList,MenuListItem,} from 'konsta/react';import DemoIcon from '../components/DemoIcon';export default function MenuListPage() {const [selected, setSelected] = useState('home');const [selectedMedia, setSelectedMedia] = useState('home');return (<Page><Navbartitle="Menu List"/><Block strong inset><p>Menu list unlike usual links list is designed to indicate currentlyactive screen (or section) of your app. Think about it like a Tabbarbut in a form of a list.</p></Block><MenuList strongIos outlineIos><MenuListItemtitle="Home"active={selected === 'home'}onClick={() => setSelected('home')}media={<DemoIcon />}/><MenuListItemtitle="Profile"active={selected === 'profile'}onClick={() => setSelected('profile')}media={<DemoIcon />}/><MenuListItemtitle="Settings"active={selected === 'settings'}onClick={() => setSelected('settings')}media={<DemoIcon />}/></MenuList><MenuList strongIos outlineIos><MenuListItemtitle="Home"subtitle="Home subtitle"active={selectedMedia === 'home'}onClick={() => setSelectedMedia('home')}media={<DemoIcon />}/><MenuListItemtitle="Profile"subtitle="Profile subtitle"active={selectedMedia === 'profile'}onClick={() => setSelectedMedia('profile')}media={<DemoIcon />}/><MenuListItemtitle="Settings"subtitle="Settings subtitle"active={selectedMedia === 'settings'}onClick={() => setSelectedMedia('settings')}media={<DemoIcon />}/></MenuList></Page>);}