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

リスト Vue コンポーネント

リストビューは、アプリで頻繁に見られる汎用性が高く強力なユーザインタフェースコンポーネントです。リストビューは、セクション/グループに分割できる複数の行のスクロール可能なリストにデータを表示します。

リストビューには多くの用途があります。

  • 階層的に構造化されたデータ内をユーザーがナビゲートできるようにするため
  • アイテムのインデックス付きリストを表示するため
  • 視覚的に異なるグループ分けで詳細情報とコントロールを表示するため
  • 選択可能なオプションのリストを表示するため

リストコンポーネント

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

  • List - メインのリストビュー要素
  • ListGroup - リストグループ要素

リストプロパティ

名前タイプデフォルト説明
colorsオブジェクト

Tailwind CSSカラークラスを含むオブジェクト

colors.outlineIos文字列'border-black border-opacity-20 dark:border-white dark:border-opacity-15'
colors.outlineMaterial文字列'border-md-light-outline border-md-dark-outline'
colors.strongBgIos文字列'bg-ios-light-surface-1 dark:bg-ios-dark-surface-1'
colors.strongBgMaterial文字列'bg-md-light-surface-1 dark:bg-md-dark-surface-1'
component文字列'div'

コンポーネントのHTML要素

dividersブール値未定義

リストアイテム間に区切り線(境界線)を表示します。dividersIosdividersMaterialを上書きします。

dividersIosブール値true

iOSテーマでリストアイテム間に区切り線(境界線)を表示します。

dividersMaterialブール値false

Materialテーマでリストアイテム間に区切り線(境界線)を表示します。

insetブール値未定義

リストブロックをインセットにします。insetIosinsetMaterialを上書きします。

insetIosブール値false

iOSテーマでリストブロックをインセットにします。

insetMaterialブール値false

Materialテーマでリストブロックをインセットにします。

margin文字列'my-8'

Tailwind CSSマージンクラス

menuListブール値

リストをメニューリストとして表示します(<MenuList>と同じです)。

nestedブール値false

ヘアライン/区切り線とマージンを削除します。他のブロック内にリストブロックをネストする場合に便利です。

outlineブール値未定義

リストの外側の境界線を表示します。outlineIosoutlineMaterialを上書きします。

outlineIosブール値false

iOSテーマでリストの外側の境界線を表示します。

outlineMaterialブール値false

Materialテーマでリストの外側の境界線を表示します。

strongブール値未定義

追加の強調表示を追加します。strongIosstrongMaterialを上書きします。

strongIosブール値false

iOSテーマで追加の強調表示を追加します。

strongMaterialブール値false

Materialテーマで追加の強調表示を追加します。

List.vue
<template>
<k-page>
<k-navbar title="List" />
<k-block-title>Simple List</k-block-title>
<k-list>
<k-list-item title="Item 1" />
<k-list-item title="Item 2" />
<k-list-item title="Item 3" />
</k-list>
<k-block-title>Strong List</k-block-title>
<k-list strong>
<k-list-item title="Item 1" />
<k-list-item title="Item 2" />
<k-list-item title="Item 3" />
</k-list>
<k-block-title>Strong Outline List</k-block-title>
<k-list strong outline>
<k-list-item title="Item 1" />
<k-list-item title="Item 2" />
<k-list-item title="Item 3" />
</k-list>
<k-block-title>Strong Inset List</k-block-title>
<k-list strong inset>
<k-list-item title="Item 1" />
<k-list-item title="Item 2" />
<k-list-item title="Item 3" />
</k-list>
<k-block-title>Strong Outline Inset List</k-block-title>
<k-list strong outline inset>
<k-list-item title="Item 1" />
<k-list-item title="Item 2" />
<k-list-item title="Item 3" />
</k-list>
<k-block-title>Simple Links List</k-block-title>
<k-list strong-ios outline-ios>
<k-list-item title="Link 1" link />
<k-list-item title="Link 2" link />
<k-list-item title="Link 3" link />
</k-list>
<k-block-title>Data list, with icons</k-block-title>
<k-list strong-ios outline-ios>
<k-list-item title="Ivan Petrov" after="CEO">
<template #media>
<demo-icon />
</template>
</k-list-item>
<k-list-item title="John Doe">
<template #media>
<demo-icon />
</template>
<template #after>
<k-badge>5</k-badge>
</template>
</k-list-item>
<k-list-item title="Jenna Smith">
<template #media>
<demo-icon />
</template>
</k-list-item>
</k-list>
<k-block-title>Links</k-block-title>
<k-list strong-ios outline-ios>
<k-list-item link title="Ivan Petrov" after="CEO">
<template #media>
<demo-icon />
</template>
</k-list-item>
<k-list-item link title="John Doe" after="Cleaner">
<template #media>
<demo-icon />
</template>
</k-list-item>
<k-list-item link title="Jenna Smith">
<template #media>
<demo-icon />
</template>
</k-list-item>
</k-list>
<k-block-title>Links, Header, Footer</k-block-title>
<k-list strong-ios outline-ios>
<k-list-item link header="Name" title="John Doe" after="Edit">
<template #media>
<demo-icon />
</template>
</k-list-item>
<k-list-item link header="Phone" title="+7 90 111-22-3344" after="Edit">
<template #media>
<demo-icon />
</template>
</k-list-item>
<k-list-item
link
header="Email"
title="john@doe"
footer="Home"
after="Edit"
>
<template #media>
<demo-icon />
</template>
</k-list-item>
<k-list-item
link
header="Email"
title="john@konsta"
footer="Work"
after="Edit"
>
<template #media>
<demo-icon />
</template>
</k-list-item>
</k-list>
<k-block-title>Links, no icons</k-block-title>
<k-list strong-ios outline-ios>
<k-list-item link title="Ivan Petrov" />
<k-list-item link title="John Doe" />
<k-list-item group-title title="Group title Here" />
<k-list-item link title="Ivan Petrov" />
<k-list-item link title="Jenna Smith" />
</k-list>
<k-block-title>Grouped with sticky titles</k-block-title>
<k-list strong-ios outline-ios>
<k-list-group>
<k-list-item
title="A"
group-title
class="ios:top-11-safe material:top-16-safe sticky"
/>
<k-list-item title="Aaron " />
<k-list-item title="Abbie" />
<k-list-item title="Adam" />
</k-list-group>
<k-list-group>
<k-list-item
title="B"
group-title
class="ios:top-11-safe material:top-16-safe sticky"
/>
<k-list-item title="Bailey" />
<k-list-item title="Barclay" />
<k-list-item title="Bartolo" />
</k-list-group>
<k-list-group>
<k-list-item
title="C"
group-title
class="ios:top-11-safe material:top-16-safe sticky"
/>
<k-list-item title="Caiden" />
<k-list-item title="Calvin" />
<k-list-item title="Candy" />
</k-list-group>
</k-list>
<k-block-title class="text-2xl">Media Lists</k-block-title>
<k-block>
<p>
Media Lists are almost the same as Data Lists, but with a more flexible
layout for visualization of more complex data, like products, services,
user, etc.
</p>
</k-block>
<k-block-title>Songs</k-block-title>
<k-list strong-ios outline-ios>
<k-list-item
:chevron-material="false"
link
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."
>
<template #media>
<img
class="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"
/>
</template>
</k-list-item>
<k-list-item
:chevron-material="false"
link
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."
>
<template #media>
<img
class="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"
/>
</template>
</k-list-item>
<k-list-item
:chevron-material="false"
link
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."
>
<template #media>
<img
class="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"
/>
</template>
</k-list-item>
</k-list>
<k-block-title>Mail App</k-block-title>
<k-list strong-ios outline-ios>
<k-list-item
:chevron-material="false"
link
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."
/>
<k-list-item
:chevron-material="false"
link
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."
/>
<k-list-item
:chevron-material="false"
link
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."
/>
<k-list-item
:chevron-material="false"
link
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."
/>
</k-list>
</k-page>
</template>
<script>
import {
kPage,
kNavbar,
kNavbarBackLink,
kBadge,
kBlock,
kBlockTitle,
kList,
kListGroup,
kListItem,
} from 'konsta/vue';
import DemoIcon from '../components/DemoIcon.vue';
export default {
components: {
kPage,
kNavbar,
kNavbarBackLink,
kBadge,
kBlock,
kBlockTitle,
kList,
kListGroup,
kListItem,
DemoIcon,
},
};
</script>
ライセンス MIT.
2022 © Konsta UI by nolimits4web.