次のコンポーネントが含まれています
ListItem
- メインのリストアイテム要素名前 | 型 | デフォルト | 説明 |
---|---|---|---|
after | ReactNode | リストアイテムの「after」領域の内容 | |
chevron | boolean | undefined | リストアイテムがリンクの場合、シェブロンアイコンを有効にします。 |
chevronIcon | ReactNode | デフォルトのシェブロンアイコンをカスタムアイコンに置き換えることを許可します | |
chevronIos | boolean | true | iOS テーマのリストアイテムがリンクの場合、シェブロンアイコンを有効にします |
chevronMaterial | boolean | true | Material テーマのリストアイテムがリンクの場合、シェブロンアイコンを有効にします |
colors | object | Tailwind CSS カラークラスのオブジェクト | |
colors.activeBgIos | string | 'active:bg-black active:bg-opacity-10 dark:active:bg-white dark:active:bg-opacity-10' | |
colors.activeBgMaterial | string | '' | |
colors.groupTitleBgIos | string | 'bg-ios-light-surface-variant dark:bg-ios-dark-surface-variant' | |
colors.groupTitleBgMaterial | string | 'bg-md-light-surface-2 dark:bg-md-dark-surface-2' | |
colors.groupTitleContactsBgIos | string | 'dark:bg-[#323234]' | |
colors.groupTitleContactsBgMaterial | string | 'bg-transparent dark:bg-transparent' | |
colors.groupTitleContactsTextMaterial | string | 'text-md-light-primary dark:text-md-dark-primary' | |
colors.groupTitleСontactsTextIos | string | 'text-opacity-90 dark:text-opacity-90' | |
colors.menuListItemActiveBgIos | string | 'bg-primary bg-opacity-15 dark:bg-primary' | |
colors.menuListItemActiveBgMaterial | string | 'bg-md-light-secondary-container dark:bg-md-dark-secondary-container' | |
colors.menuListItemActiveTextIos | string | 'text-primary dark:text-white' | |
colors.menuListItemActiveTextMaterial | string | 'text-md-light-on-secondary-container dark:text-md-dark-on-secondary-container' | |
colors.menuListItemBgIos | string | 'active:bg-black active:bg-opacity-10 dark:active:bg-white dark:active:bg-opacity-10' | |
colors.menuListItemBgMaterial | string | 'bg-md-light-surface-1 dark:bg-md-dark-surface-1' | |
colors.menuListItemTextIos | string | 'text-black dark:text-white' | |
colors.menuListItemTextMaterial | string | 'text-md-light-on-surface-variant dark:text-md-dark-on-surface-variant' | |
colors.primaryTextIos | string | 'text-black dark:text-white' | |
colors.primaryTextMaterial | string | 'text-md-light-on-surface dark:text-md-dark-on-surface' | |
colors.secondaryTextIos | string | 'text-black text-opacity-55 dark:text-white dark:text-opacity-55' | |
colors.secondaryTextMaterial | string | 'text-md-light-on-surface-variant dark:text-md-dark-on-surface-variant' | |
colors.touchRipple | string | 'touch-ripple-black dark:touch-ripple-white' | |
component | string | 'li' | コンポーネントの HTML 要素 |
contacts | boolean | undefined | スタイリングに必要な追加クラスを追加して、連絡先リストを有効にします |
contentChildren | ReactNode | item-content の内容 | |
contentClassName | string | item "content" 要素に追加する追加クラス | |
dividers | boolean | undefined | リストアイテム間の仕切り(境界線)をレンダリングします。指定されていない場合は、親の List コンポーネントから |
footer | ReactNode | リストアイテムの「footer」領域の内容 | |
groupTitle | boolean | false | リストグループタイトルとしてレンダリングします |
header | ReactNode | リストアイテムの「header」領域の内容 | |
href | string | boolean | リストアイテムリンクの | |
innerChildren | ReactNode | item-inner の内容 | |
innerClassName | string | item "inner" 要素に追加する追加クラス | |
label | boolean | false | アイテムの内容を |
link | boolean | false | リストアイテムをリンク( |
linkComponent | string | 'a' | リストアイテムリンクの HTML 要素 |
linkProps | any | Link/Button に渡す追加のプロパティ(属性)を持つオブジェクト | |
media | ReactNode | リストアイテムの「media」領域の内容 | |
mediaClassName | string | item "media" 要素に追加する追加クラス | |
menuListItem | boolean | リストアイテムをメニューリストアイテム( | |
menuListItemActive | boolean | false | メニューリストアイテムを強調表示(アクティブ)にします( |
strongTitle | boolean | 'auto' | アイテムのタイトルを強調表示(太字)にします。 | |
subtitle | ReactNode | リストアイテムの「subtitle」領域の内容 | |
target | string | リストアイテムリンクの | |
text | ReactNode | リストアイテムの「text」領域の内容 | |
title | ReactNode | リストアイテムの「title」領域の内容 | |
titleFontSizeIos | string | 'text-[17px]' | iOS テーマでのアイテムタイトルのフォントサイズの Tailwind CSS クラス |
titleFontSizeMaterial | string | 'text-[16px]' | Material テーマでのアイテムタイトルのフォントサイズの Tailwind CSS クラス |
titleWrapClassName | string | item "titleWrap" 要素に追加する追加クラス | |
touchRipple | boolean | true | Material テーマでタッチリップル効果を有効にします |
import React from 'react';import {Page,Navbar,NavbarBackLink,Badge,Block,BlockTitle,List,ListGroup,ListItem,} from 'konsta/react';import DemoIcon from '../components/DemoIcon';export default function ListPage() {return (<Page><Navbartitle="List"/><BlockTitle>Simple List</BlockTitle><List><ListItem title="Item 1" /><ListItem title="Item 2" /><ListItem title="Item 3" /></List><BlockTitle>Strong List</BlockTitle><List strong><ListItem title="Item 1" /><ListItem title="Item 2" /><ListItem title="Item 3" /></List><BlockTitle>Strong Outline List</BlockTitle><List strong outline><ListItem title="Item 1" /><ListItem title="Item 2" /><ListItem title="Item 3" /></List><BlockTitle>Strong Inset List</BlockTitle><List strong inset><ListItem title="Item 1" /><ListItem title="Item 2" /><ListItem title="Item 3" /></List><BlockTitle>Strong Outline Inset List</BlockTitle><List strong outline inset><ListItem title="Item 1" /><ListItem title="Item 2" /><ListItem title="Item 3" /></List><BlockTitle>Simple Links List</BlockTitle><List strongIos outlineIos><ListItem title="Link 1" link /><ListItem title="Link 2" link /><ListItem title="Link 3" link /></List><BlockTitle>Data list, with icons</BlockTitle><List strongIos outlineIos><ListItem media={<DemoIcon />} title="Ivan Petrov" after="CEO" /><ListItemtitle="John Doe"media={<DemoIcon />}after={<Badge>5</Badge>}/><ListItem media={<DemoIcon />} title="Jenna Smith" /></List><BlockTitle>Links</BlockTitle><List strongIos outlineIos><ListItem media={<DemoIcon />} link title="Ivan Petrov" after="CEO" /><ListItem media={<DemoIcon />} link title="John Doe" after="Cleaner" /><ListItem media={<DemoIcon />} link title="Jenna Smith" /></List><BlockTitle>Links, Header, Footer</BlockTitle><List strongIos outlineIos><ListItemmedia={<DemoIcon />}linkheader="Name"title="John Doe"after="Edit"/><ListItemmedia={<DemoIcon />}linkheader="Phone"title="+7 90 111-22-3344"after="Edit"/><ListItemlinkheader="Email"title="john@doe"footer="Home"after="Edit"media={<DemoIcon />}/><ListItemlinkheader="Email"title="john@konsta"footer="Work"after="Edit"media={<DemoIcon />}/></List><BlockTitle>Links, no icons</BlockTitle><List strongIos outlineIos><ListItem link title="Ivan Petrov" /><ListItem link title="John Doe" /><ListItem groupTitle title="Group title here" /><ListItem link title="Ivan Petrov" /><ListItem link title="Jenna Smith" /></List><BlockTitle>Grouped with sticky titles</BlockTitle><List strongIos outlineIos><ListGroup><ListItemtitle="A"groupTitleclassName="ios:top-11-safe material:top-16-safe sticky"/><ListItem title="Aaron " /><ListItem title="Abbie" /><ListItem title="Adam" /></ListGroup><ListGroup><ListItemtitle="B"groupTitleclassName="ios:top-11-safe material:top-16-safe sticky"/><ListItem title="Bailey" /><ListItem title="Barclay" /><ListItem title="Bartolo" /></ListGroup><ListGroup><ListItemtitle="C"groupTitleclassName="ios:top-11-safe material:top-16-safe sticky"/><ListItem title="Caiden" /><ListItem title="Calvin" /><ListItem title="Candy" /></ListGroup></List><BlockTitle className="text-2xl">Media Lists</BlockTitle><Block><p>Media Lists are almost the same as Data Lists, but with a moreflexible layout for visualization of more complex data, like products,services, user, etc.</p></Block><BlockTitle>Songs</BlockTitle><List strongIos outlineIos><ListItemlinkchevronMaterial={false}title="Yellow Submarine"after="$15"subtitle="Beatles"text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla sagittis tellus ut turpis condimentum, ut dignissim lacus tincidunt. Cras dolor metus, ultrices condimentum sodales sit amet, pharetra sodales eros. Phasellus vel felis tellus. Mauris rutrum ligula nec dapibus feugiat. In vel dui laoreet, commodo augue id, pulvinar lacus."media={<imgclassName="ios:rounded-lg material:rounded-full ios:w-20 material:w-10"src="https://cdn.framework7.io/placeholder/people-160x160-1.jpg"width="80"alt="demo"/>}/><ListItemlinkchevronMaterial={false}title="Don't Stop Me Now"after="$22"subtitle="Queen"text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla sagittis tellus ut turpis condimentum, ut dignissim lacus tincidunt. Cras dolor metus, ultrices condimentum sodales sit amet, pharetra sodales eros. Phasellus vel felis tellus. Mauris rutrum ligula nec dapibus feugiat. In vel dui laoreet, commodo augue id, pulvinar lacus."media={<imgclassName="ios:rounded-lg material:rounded-full ios:w-20 material:w-10"src="https://cdn.framework7.io/placeholder/people-160x160-2.jpg"width="80"alt="demo"/>}/><ListItemlinkchevronMaterial={false}title="Billie Jean"after="$16"subtitle="Michael Jackson"text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla sagittis tellus ut turpis condimentum, ut dignissim lacus tincidunt. Cras dolor metus, ultrices condimentum sodales sit amet, pharetra sodales eros. Phasellus vel felis tellus. Mauris rutrum ligula nec dapibus feugiat. In vel dui laoreet, commodo augue id, pulvinar lacus."media={<imgclassName="ios:rounded-lg material:rounded-full ios:w-20 material:w-10"src="https://cdn.framework7.io/placeholder/people-160x160-3.jpg"width="80"alt="demo"/>}/></List><BlockTitle>Mail App</BlockTitle><List strongIos outlineIos><ListItemlinkchevronMaterial={false}title="Facebook"after="17:14"subtitle="New messages from John Doe"text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla sagittis tellus ut turpis condimentum, ut dignissim lacus tincidunt. Cras dolor metus, ultrices condimentum sodales sit amet, pharetra sodales eros. Phasellus vel felis tellus. Mauris rutrum ligula nec dapibus feugiat. In vel dui laoreet, commodo augue id, pulvinar lacus."/><ListItemlinkchevronMaterial={false}title="John Doe (via Twitter)"after="17:11"subtitle="John Doe (@_johndoe) mentioned you on Twitter!"text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla sagittis tellus ut turpis condimentum, ut dignissim lacus tincidunt. Cras dolor metus, ultrices condimentum sodales sit amet, pharetra sodales eros. Phasellus vel felis tellus. Mauris rutrum ligula nec dapibus feugiat. In vel dui laoreet, commodo augue id, pulvinar lacus."/><ListItemlinkchevronMaterial={false}title="Facebook"after="16:48"subtitle="New messages from John Doe"text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla sagittis tellus ut turpis condimentum, ut dignissim lacus tincidunt. Cras dolor metus, ultrices condimentum sodales sit amet, pharetra sodales eros. Phasellus vel felis tellus. Mauris rutrum ligula nec dapibus feugiat. In vel dui laoreet, commodo augue id, pulvinar lacus."/><ListItemlinkchevronMaterial={false}title="John Doe (via Twitter)"after="15:32"subtitle="John Doe (@_johndoe) mentioned you on Twitter!"text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla sagittis tellus ut turpis condimentum, ut dignissim lacus tincidunt. Cras dolor metus, ultrices condimentum sodales sit amet, pharetra sodales eros. Phasellus vel felis tellus. Mauris rutrum ligula nec dapibus feugiat. In vel dui laoreet, commodo augue id, pulvinar lacus."/></List></Page>);}