List Item Vue Component
List Item Components
There are following components included:
**f7-list-item**
- main list item element**f7-list-item-row**
- list item row element for custom layout**f7-list-item-cell**
- list item cell element for custom layout
List Item Properties
Prop | Type | Default | Description |
---|---|---|---|
<f7-list-item> properties | |||
title | string | List item title | |
subtitle | string | List item subtitle (only for Media List) | |
text | string | List item text (only for Media List) | |
header | string | List item header text | |
footer | string | List item footer text | |
media | string | List item media image URL | |
after | string | List item label | |
badge | string number | List item Badge | |
badge-color | string | List item Badge color. One of the default colors | |
media-item | boolean | Enables Media list item for the current list item | |
divider | boolean | Converts list item to list item divider | |
group-title | boolean | Converts list item to list group title | |
no-fast-click | boolean | Disables fast click | |
target | boolean | List item link target attribute | |
no-chevron | boolean | false | Removes “chevron” icon on list item link |
chevron-center | boolean | false | Sets “chevron” icon on media list item on center (vertically) |
<f7-list-item> Form inputs specific properties | |||
inline-label | boolean | false | Enables inline-styled labels for Form Inputs. By default inherirt inline-labels prop on parent <f7-list> |
item-input | boolean | false | Enables additional styling for Form Inputs inside. By default will try to detect based on content |
item-input-with-info | boolean | false | Enables additional styling for Form Inputs with additional info. By default will try to detect based on content |
<f7-list-item> Swipeout specific properties | |||
swipeout | boolean | Converts list item to swipeout list item | |
swipeout-opened | boolean | Defines whether swipe actions should be opened or not. Note, only one swipeout item can be opened at same time | |
<f7-list-item> Accordion specific properties | |||
accordion-item | boolean | false | Converts list item to accordion list item |
accordion-item-opened | boolean | false | Makes accordion item opened |
<f7-list-item> Virtual List specific properties | |||
virtual-list-index | number | Allows to pass list item index (from whole collection) when used in Virtual List. Useful to be used together with Sortable to know correct changed indexes | |
<f7-list-item> Smart Select specific properties | |||
smart-select | boolean | false | Enables Smart Select behavior |
smart-select-params | object | Object with Smart Select Parameters | |
<f7-list-item> Checkboxes & Radios specific properties | |||
checkbox | boolean | false | Enables checkbox-item |
radio | boolean | false | Enables radio-item |
checked | boolean | false | Whether the checkbox/radio input is checked |
name | string | Checkbox/radio input name | |
value | string number | Checkbox/radio input value | |
readonly | boolean | false | Whether the checkbox/radio input is readonly |
disabled | boolean | false | Whether the checkbox/radio input is disabled |
required | boolean | false | Whether the checkbox/radio input is required |
<f7-list-item> navigation/router related properties | |||
link | boolean string | Enables link and link URL if specified as string. Same as href prop | |
href | string boolean | # | URL of the page to load. In case of boolean href=”false” it won’t add href tag |
target | string | Value of link target attribute, e.g. _blank , _self , etc. | |
view | string | CSS selector of the View to load the page | |
external | boolean | Enable to bypass Framework7’s link click handler | |
back | boolean | Enables back navigation link | |
force | boolean | Force page to load and ignore previous page in history (use together with back prop) | |
reload-current | boolean | Reloads new page instead of the currently active one | |
reload-previous | boolean | Replace the previous page in history with the new one from route | |
reload-all | boolean | Load new page and remove all previous pages from history and DOM | |
animate | boolean | Disables pages animation | |
ignore-cache | boolean | Ignores caching | |
route-tab-id | string | Routable Tab id | |
route-props | object | Object with additional props that will be passed to target route component | |
<f7-list-item> action related properties | |||
panel-open | string boolean | Defines panel to open. Can be left or right | |
panel-close | boolean | Closes panel on click | |
actions-open | string boolean | CSS selector of the action sheet to open on click | |
actions-close | string boolean | CSS selector of the action sheet to close on click. Or boolean property to close currently opened action sheet | |
popup-open | string boolean | CSS selector of the popup to open on click | |
popup-close | string boolean | CSS selector of the popup to close on click. Or boolean property to close currently opened popup | |
popover-open | string boolean | CSS selector of the popover to open on click | |
popover-close | string boolean | CSS selector of the popover to close on click. Or boolean property to close currently opened popover | |
sheet-open | string boolean | CSS selector of the sheet modal to open on click | |
sheet-close | string boolean | CSS selector of the sheet modal to close on click. Or boolean property to close currently opened sheet modal | |
login-screen-open | string boolean | CSS selector of the login screen to open on click | |
login-screen-close | string boolean | CSS selector of the login screen to close on click. Or boolean property to close currently opened login screen | |
sortable-enable | string boolean | CSS selector of the Sortable list to open on click | |
sortable-disable | string boolean | CSS selector of the Sortable list to close on click. Or boolean property to close currently opened Sortable list | |
sortable-toggle | string boolean | CSS selector of the Sortable list to toggle on click. Or boolean property to toggle currently opened/closed Sortable list | |
searchbar-enable | string boolean | CSS selector of the Expandable Searchbar to be enabled on click. Or boolean property to enable the first found Searchbar | |
searchbar-disable | string boolean | CSS selector of the Expandable Searchbar to be disabled on click. Or boolean property to disable the first found Searchbar | |
searchbar-toggle | string boolean | CSS selector of the Expandable Searchbar to toggle on click. Or boolean property to toggle the first found Searchbar | |
searchbar-clear | string boolean | CSS selector of the Expandable Searchbar to clear on click. Or boolean property to clear the first found Searchbar |
List Item Events
Event | Description |
---|---|
<f7-list-item> events | |
click | Event will be triggeres when user clicks on list item |
change | Event will be triggeres when “change” event occurs on list item input (radio or checkbox) |
swipeout | Event will be triggered while you move swipeout element. event.detail.progress contains current opened progress percentage |
swipeout:open | Event will be triggered when swipeout element starts its opening animation |
swipeout:opened | Event will be triggered after swipeout element completes its opening animation |
swipeout:close | Event will be triggered when swipeout element starts its closing animation |
swipeout:closed | Event will be triggered after swipeout element completes its closing animation |
swipeout:delete | Event will be triggered after swipeout element starts its delete animation |
swipeout:deleted | Event will be triggered after swipeout element completes its delete animation right before it will be removed from DOM |
accordion:beforeopen | Event will be triggered right before accordion content starts its opening animation. event.detail.prevent contains function that will prevent accordion from opening when called |
accordion:open | Event will be triggered when accordion content starts its opening animation. |
accordion:opened | Event will be triggered after accordion content completes its opening animation. |
accordion:beforeclose | Event will be triggered right before accordion content starts its closing animation. event.detail.prevent contains function that will prevent accordion from closing when called |
accordion:close | Event will be triggered when accordion content starts its closing animation. |
accordion:closed | Event will be triggered after accordion content completes its closing animation. |
List Item Slots
List Item Vue component (<f7-list-item>
) has additional slots for custom elements:
**root-start**
- element will be inserted in the beginning of<li>
element**root**
/**root-end**
- element will be inserted in the end of<li>
element**content-start**
- element will be inserted in the beginning of<div class="item-content">
element**content**
/**content-end**
- element will be inserted in the end of<div class="item-content">
element**inner-start**
- element will be inserted in the beginning of<div class="item-inner">
element**default**
/**inner**
/**inner-end**
- element will be inserted in the end of<div class="item-inner">
element**media**
- element will be inserted inside of<div class="item-media">
element**before-title**
- element will be inserted before<div class="item-title">
element**title**
- element will be inserted inside of<div class="item-title">
element**after-title**
- element will be inserted after<div class="item-title">
element**subtitle**
- element will be inserted inside of<div class="item-subtitle">
element**text**
- element will be inserted inside of<div class="item-text">
element**header**
- element will be inserted inside of<div class="item-header">
element**footer**
- element will be inserted inside of<div class="item-footer">
element**after-start**
- element will be inserted in the beginning of<div class="item-after">
element**after**
/**after-end**
- element will be inserted in the end of<div class="item-after">
element
<f7-list media-list>
<f7-list-item
link="/home/"
title="Item Title"
subtitle="Item Subtitle"
text="Text"
after="Read more"
>
<img src="path-to-my-image.jpg" slot="media">
<div slot="root-start">Root Start</div>
<div slot="root">Root End</div>
<div slot="content-start">Content Start</div>
<div slot="content">Content End</div>
<div slot="media-start">Media Start</div>
<div slot="media">Media</div>
<span slot="after-start">After Start</span>
<span slot="after">After End</span>
<div slot="inner-start">Inner Start</div>
<div slot="inner">Inner End</div>
<div slot="before-title">Before Title</div>
<div slot="after-title">After Title</div>
</f7-list-item>
</f7-list>
<!-- Renders to: -->
<div class="list media-list">
<ul>
<li>
<div>Root Start</div>
<a href="/home/" class="item-link">
<div class="item-content">
<div>Content Start</div>
<div class="item-media">
<img src="path-to-my-image.jpg">
</div>
<div class="item-inner">
<div>Inner Start</div>
<div class="item-title-row">
<div>Before Title</div>
<div class="item-title">Item Title</div>
<div>After Title</div>
<div class="item-after">
<span>After Start</span>
<span>Read more</span>
<span>After End</span>
</div>
</div>
<div class="item-subtitle">Item Subtitle</div>
<div class="item-text">Text</div>
<div>Inner End</div>
</div>
<div>Content End</div>
</div>
</a>
<div>Root End</div>
</li>
</ul>
</div>
Examples
Simple List
<f7-block-title>Simple List</f7-block-title>
<f7-list simple-list>
<f7-list-item title="Item 1"></f7-list-item>
<f7-list-item title="Item 2"></f7-list-item>
<f7-list-item title="Item 3"></f7-list-item>
</f7-list>
Simple List Links
<f7-block-title>Simple Links List</f7-block-title>
<f7-list>
<f7-list-item title="Link 1" link="#"></f7-list-item>
<f7-list-item title="Link 2" link="#"></f7-list-item>
<f7-list-item title="Link 3" link="#"></f7-list-item>
</f7-list>
Data list, with icons
<f7-block-title>Data list, with icons</f7-block-title>
<f7-list>
<f7-list-item title="Ivan Petrov" after="CEO">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
</f7-list-item>
<f7-list-item title="John Doe" badge="5">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
</f7-list-item>
<f7-list-item title="Jenna Smith">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
</f7-list-item>
</f7-list>
Links
<f7-block-title>Links</f7-block-title>
<f7-list>
<f7-list-item link="#" title="Ivan Petrov" after="CEO">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
</f7-list-item>
<f7-list-item link="#" title="John Doe" after="Cleaner">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
</f7-list-item>
<f7-list-item link="#" title="Jenna Smith">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
</f7-list-item>
</f7-list>
Links, Header, Footer
<f7-block-title>Links, Header, Footer</f7-block-title>
<f7-list>
<f7-list-item link="#" header="Name" title="John Doe" after="Edit">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
</f7-list-item>
<f7-list-item link="#" header="Phone" title="+7 90 111-22-3344" after="Edit">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
</f7-list-item>
<f7-list-item link="#" header="Email" title="john@doe" footer="Home" after="Edit">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
</f7-list-item>
<f7-list-item link="#" header="Email" title="john@framework7" footer="Work" after="Edit">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
</f7-list-item>
</f7-list>
Links, no icons
<f7-block-title>Links, no icons</f7-block-title>
<f7-list>
<f7-list-item link="#" title="Ivan Petrov"></f7-list-item>
<f7-list-item link="#" title="John Doe"></f7-list-item>
<f7-list-item divider title="Divider Here"></f7-list-item>
<f7-list-item link="#" title="Ivan Petrov"></f7-list-item>
<f7-list-item link="#" title="Jenna Smith"></f7-list-item>
</f7-list>
Grouped with sticky titles
<f7-block-title>Grouped with sticky titles</f7-block-title>
<f7-list>
<f7-list-group>
<f7-list-item title="A" group-title></f7-list-item>
<f7-list-item title="Aaron "></f7-list-item>
<f7-list-item title="Abbie"></f7-list-item>
<f7-list-item title="Adam"></f7-list-item>
</f7-list-group>
<f7-list-group>
<f7-list-item title="B" group-title></f7-list-item>
<f7-list-item title="Bailey"></f7-list-item>
<f7-list-item title="Barclay"></f7-list-item>
<f7-list-item title="Bartolo"></f7-list-item>
</f7-list-group>
<f7-list-group>
<f7-list-item title="C" group-title></f7-list-item>
<f7-list-item title="Caiden"></f7-list-item>
<f7-list-item title="Calvin"></f7-list-item>
<f7-list-item title="Candy"></f7-list-item>
</f7-list-group>
</f7-list>
Mixed and nested
<f7-block-title>Mixed and nested</f7-block-title>
<f7-list>
<f7-list-item link="#" title="Ivan Petrov" after="CEO">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
</f7-list-item>
<f7-list-item link="#" title="Two icons here">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
</f7-list-item>
<f7-list-item title="No icons here"></f7-list-item>
<li>
<ul>
<f7-list-item link="#" title="Ivan Petrov" after="CEO">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
</f7-list-item>
<f7-list-item link="#" title="Two icons here">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
</f7-list-item>
<f7-list-item title="No icons here"></f7-list-item>
<f7-list-item link="#" title="Ultra long text goes here, no, it is really really long">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
</f7-list-item>
<f7-list-item title="With toggle">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
<f7-toggle slot="after"></f7-toggle>
</f7-list-item>
</ul>
</li>
<f7-list-item link="#" title="Ultra long text goes here, no, it is really really long">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
</f7-list-item>
<f7-list-item title="With toggle">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
<f7-toggle slot="after"></f7-toggle>
</f7-list-item>
</f7-list>
Mixed, inset
<f7-block-title>Mixed, inset</f7-block-title>
<f7-list>
<f7-list-item link="#" title="Ivan Petrov" after="CEO">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
</f7-list-item>
<f7-list-item link="#" title="Two icons here">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
</f7-list-item>
<f7-list-item link="#" title="Ultra long text goes here, no, it is really really long">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
</f7-list-item>
<f7-list-item title="With toggle">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
<f7-toggle slot="after"></f7-toggle>
</f7-list-item>
<f7-block-footer>
<p>Here comes some useful information about list above</p>
</f7-block-footer>
</f7-list>
Tablet inset
<f7-block-title>Tablet inset</f7-block-title>
<f7-list tablet-inset>
<f7-list-item link="#" title="Ivan Petrov" after="CEO">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
</f7-list-item>
<f7-list-item link="#" title="Two icons here">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
</f7-list-item>
<f7-list-item link="#" title="Ultra long text goes here, no, it is really really long">
<f7-icon slot="media" icon="demo-list-icon"></f7-icon>
</f7-list-item>
<f7-block-footer>
<p>This list block will look like "inset" only on tablets (iPad)</p>
</f7-block-footer>
</f7-list>
Media Lists
<f7-block-title>Media Lists</f7-block-title>
<f7-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, userc, etc.</p>
</f7-block>
<f7-block-title>Songs</f7-block-title>
<f7-list media-list>
<f7-list-item
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."
>
<img slot="media" src="http://lorempixel.com/160/160/people/1" width="80" />
</f7-list-item>
<f7-list-item
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."
>
<img slot="media" src="http://lorempixel.com/160/160/people/2" width="80" />
</f7-list-item>
<f7-list-item
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."
>
<img slot="media" src="http://lorempixel.com/160/160/people/3" width="80" />
</f7-list-item>
</f7-list>
Mail App
<f7-block-title>Mail App</f7-block-title>
<f7-list media-list>
<f7-list-item
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."
></f7-list-item>
<f7-list-item
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."
></f7-list-item>
<f7-list-item
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."
></f7-list-item>
<f7-list-item
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."
></f7-list-item>
</f7-list>
Something more simple
<f7-block-title>Something more simple</f7-block-title>
<f7-list media-list>
<f7-list-item
title="Yellow Submarine"
subtitle="Beatles">
<img slot="media" src="http://lorempixel.com/88/88/fashion/1" width="44" />
</f7-list-item>
<f7-list-item
link="#"
title="Don't Stop Me Now"
subtitle="Queen">
<img slot="media" src="http://lorempixel.com/88/88/fashion/2" width="44" />
</f7-list-item>
<f7-list-item
title="Billie Jean"
subtitle="Michael Jackson">
<img slot="media" src="http://lorempixel.com/88/88/fashion/3" width="44" />
</f7-list-item>
</f7-list>
Inset
<f7-block-title>Inset</f7-block-title>
<f7-list media-list inset>
<f7-list-item
link="#"
title="Yellow Submarine"
subtitle="Beatles">
<img slot="media" src="http://lorempixel.com/88/88/fashion/4" width="44" />
</f7-list-item>
<f7-list-item
link="#"
title="Don't Stop Me Now"
subtitle="Queen">
<img slot="media" src="http://lorempixel.com/88/88/fashion/5" width="44" />
</f7-list-item>
<f7-list-item
link="#"
title="Billie Jean"
subtitle="Michael Jackson">
<img slot="media" src="http://lorempixel.com/88/88/fashion/6" width="44" />
</f7-list-item>
</f7-list>
当前内容版权归 Framework7 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 Framework7 .