阅读(3071)
赞(0)
Vant Cell 单元格
2020-02-05 09:44:06 更新
引入
import Vue from 'vue';
import { Cell, CellGroup } from 'vant';
Vue.use(Cell);
Vue.use(CellGroup);
代码演示
基础用法
Cell可以单独使用,也可以与CellGroup搭配使用。CellGroup可以为Cell提供上下外边框
<van-cell-group>
<van-cell title="单元格" value="内容" />
<van-cell title="单元格" value="内容" label="描述信息" />
</van-cell-group>
单元格大小
通过size属性可以控制单元格的大小
<van-cell title="单元格" value="内容" size="large" />
<van-cell title="单元格" value="内容" size="large" label="描述信息" />
展示图标
通过icon属性在标题左侧展示图标
<van-cell title="单元格" icon="location-o" />
只设置 value
只设置value时,内容会靠左对齐
<van-cell value="内容" />
展示箭头
设置is-link属性后会在单元格右侧显示箭头,并且可以通过arrow-direction属性控制箭头方向
<van-cell title="单元格" is-link />
<van-cell title="单元格" is-link value="内容" />
<van-cell title="单元格" is-link arrow-direction="down" value="内容" />
页面导航
可以通过url属性进行 URL 跳转,或通过to属性进行路由跳转
<van-cell title="URL 跳转" is-link url="/vant/mobile.html" />
<van-cell title="路由跳转" is-link to="index" />
分组标题
通过CellGroup的title属性可以指定分组标题
<van-cell-group title="分组1">
<van-cell title="单元格" value="内容" />
</van-cell-group>
<van-cell-group title="分组2">
<van-cell title="单元格" value="内容" />
</van-cell-group>
使用插槽
如以上用法不能满足你的需求,可以使用插槽来自定义内容
<van-cell value="内容" is-link>
<!-- 使用 title 插槽来自定义标题 -->
<template slot="title">
<span class="custom-title">单元格</span>
<van-tag type="danger">标签</van-tag>
</template>
</van-cell>
<van-cell title="单元格" icon="shop-o">
<!-- 使用 right-icon 插槽来自定义右侧图标 -->
<van-icon
slot="right-icon"
name="search"
style="line-height: inherit;"
/>
</van-cell>
垂直居中
通过center属性可以让Cell的左右内容都垂直居中
<van-cell center title="单元格" value="内容" label="描述信息" />
API
CellGroup Props
参数 | 说明 | 类型 | 默认值 |
---|---|---|---|
title | 分组标题 | string | - |
border | 是否显示外边框 | boolean | true |
Cell Props
参数 | 说明 | 类型 | 默认值 |
---|---|---|---|
icon | 左侧 图标名称 或图片链接 | string | - |
title | 左侧标题 | number | string | - |
value | 右侧内容 | number | string | - |
label | 标题下方的描述信息 | string | - |
size | 单元格大小,可选值为 large | string | - |
url | 点击后跳转的链接地址 | string | - |
to | 点击后跳转的目标路由对象,同 vue-router 的 to 属性 | string | object | - |
border | 是否显示内边框 | boolean | true |
replace | 是否在跳转时替换当前页面历史 | boolean | false |
clickable | 是否开启点击反馈 | boolean | false |
is-link | 是否展示右侧箭头并开启点击反馈 | boolean | false |
required | 是否显示表单必填星号 | boolean | false |
center | 是否使内容垂直居中 | boolean | false |
arrow-direction | 箭头方向,可选值为 left up down | string | right |
title-style | 左侧标题额外样式 | any | - |
title-class | 左侧标题额外类名 | any | - |
value-class | 右侧内容额外类名 | any | - |
label-class | 描述信息额外类名 | any | - |
Cell Events
事件名 | 说明 | 回调参数 |
---|---|---|
click | 点击单元格时触发 | event: Event |
CellGroup Slots
名称 | 说明 |
---|---|
default | 默认插槽 |
title | 自定义分组标题 |
Cell Slots
名称 | 说明 |
---|---|
default | 自定义右侧内容 |
title | 自定义左侧标题 |
label | 自定义标题下方描述 |
icon | 自定义左侧图标 |
right-icon | 自定义右侧按钮,默认为arrow |