🔥 新プロジェクトのご紹介 t0ggles - 究極のプロジェクト管理ツール! 🔥

メニューリスト React コンポーネント

メニューリストはリストビューの拡張です。通常のリンクリストとは異なり、メニューリストはアプリの現在アクティブな画面(またはセクション)を示すように設計されています。タブバーのようなものですが、リスト形式です。

以下のコンポーネントが含まれています

  • MenuList - メニューリストコンポーネント
  • MenuListItem - メニューリストアイテム要素

MenuListコンポーネントには特定のプロパティはありませんが、Listコンポーネントを拡張しているため、すべてのListプロパティをサポートしています

MenuListItemコンポーネントはListItemコンポーネントを拡張しており、すべてのListItemプロパティと以下の追加プロパティをサポートしています

名前タイプデフォルト説明
activebooleanfalse

メニューリストアイテムを強調表示(アクティブ)します

hrefstring | boolean

メニューリストアイテムリンクの href 属性

mediaReactNode

チップメディア領域のコンテンツ(例:アイコン)

subtitleReactNode

メニューリストアイテムの「サブタイトル」領域のコンテンツ

MenuList.jsx
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>
<Navbar
title="Menu List"
/>
<Block strong inset>
<p>
Menu list unlike usual links list is designed to indicate currently
active screen (or section) of your app. Think about it like a Tabbar
but in a form of a list.
</p>
</Block>
<MenuList strongIos outlineIos>
<MenuListItem
title="Home"
active={selected === 'home'}
onClick={() => setSelected('home')}
media={<DemoIcon />}
/>
<MenuListItem
title="Profile"
active={selected === 'profile'}
onClick={() => setSelected('profile')}
media={<DemoIcon />}
/>
<MenuListItem
title="Settings"
active={selected === 'settings'}
onClick={() => setSelected('settings')}
media={<DemoIcon />}
/>
</MenuList>
<MenuList strongIos outlineIos>
<MenuListItem
title="Home"
subtitle="Home subtitle"
active={selectedMedia === 'home'}
onClick={() => setSelectedMedia('home')}
media={<DemoIcon />}
/>
<MenuListItem
title="Profile"
subtitle="Profile subtitle"
active={selectedMedia === 'profile'}
onClick={() => setSelectedMedia('profile')}
media={<DemoIcon />}
/>
<MenuListItem
title="Settings"
subtitle="Settings subtitle"
active={selectedMedia === 'settings'}
onClick={() => setSelectedMedia('settings')}
media={<DemoIcon />}
/>
</MenuList>
</Page>
);
}
コードライセンス MIT.
2022 © Konsta UI by nolimits4web.