简单汇总
2024年1月10日
Button 按钮
文档链接: https://vant-contrib.gitee.io/vant/#/zh-CN/button
在 Vue3 + TS + 配置自动加载后可直接使用
基本语法
<van-button>文字</van-button>
文档示例特征
- 可设置类型
type
:default
(白色),primary
(蓝色),success
(绿色),warning
(黄色),danger
(红色) - 朴素按钮, 即白色背景按钮, 只要包含
plain
属性即可. - 细边框, 只要含有
hairline
属性, 即可展示0.5px
的细边框. - 禁用状态, 使用
disabled
属性即可 (样式上置灰). - 加载状态, 使用
loading
属性. 可以设置加载图标 (loading-type
), 以及文字loading-text
. - 按钮形状. 默认为圆角矩形. 可以设置
square
方矩形. 和round
胶囊形. - 图标按钮. 使用
icon
属性添加图标. - 按钮尺寸.
size
属性, 可取值:large
,normal
,small
,mini
. - 块级元素. 使用
block
属性. - 页面导航. 使用
url
属性, 或to
属性. - 自定义颜色. 使用
color
属性. 支持使用梯度渐变色. - 动画按钮. 组合使用
Button
和Swip
组件. 将轮播嵌入到 按钮 中.
Cell 单元格
文档地址: https://vant-contrib.gitee.io/vant/#/zh-CN/cell
基本语法:
<van-cell
title="标题"
value="右侧内容"
label="标题下方的描述文字"
></van-cell>
一般以横向分组列表的形式展示数据项. 逻辑样式与手机中设置的样式类似.
常用属性有:
title
主题标题label
标题下方的子标题value
右侧是文字is-link
显示右侧箭头url
或to
用来设置导航. 配合replace
来设置是否替换页面历史.required
当用作表单的时候, 显示必填星号.center
在同时使用title
和label
后, 行高会变高, 用于控制右侧是否垂直居中.
附加组件 CellGroup
作为容器使用:
<van-cell-group></van-cell-group>
常用属性:
title
设置分组标题.
ConfigProvider 全局配置
文档: https://vant-contrib.gitee.io/vant/#/zh-CN/config-provider
基本语法:
<van-config-provider></van-config-provider>
作为全局容器使用, 可以配置一些全局属性. 例如主题等.
具体用法暂未整理.
Icon 图标
文档链接: https://vant-contrib.gitee.io/vant/#/zh-CN/icon
使用 name
属性来指定图标内容.
使用语法:
<van-icon name="图标名"></van-icon>
使用的时候查即可.
常用属性:
- 徽标
badge
- 右上角点:
dot
- 自定义颜色
color
Image 图片
文档地址: https://vant-contrib.gitee.io/vant/#/zh-CN/image
基本语法:
<vant-image width="100" height="100" src="..."></vant-image>
常用属性:
width
和height
设置宽高. 默认为inline-block
元素.src
用来设置图片地址.- 填充模式:
fit
, 常用取值:cover
, 还有特定时候才会使用. - 圆形图片. 使用
round
属性即可. 在设置图标或头像的时候会使用到.
懒加载的用法:
- 引入
Lazyload
组件, 该组件是指令的形式. 因此建议使用全局加载. - 在需要加载图片的组件中, 使用
v-lazy
来代替src
- 需要作为背景样式加载图片的时候使用
v-lazy:background-image
, 属性值为图片地址. - 如果要懒加载组件. 全局注册时使用
lazyComponent: true
的选项. 使用lazy-component
组件作为组件容器.
注意文档中使用的属性不同:
img
使用v-lazy
指定图片. 经过演示,img
标签不支持使用lazy-load
实现懒加载, 只适用于v-lazy
方法.image
使用src
指定图片, 带上lazy-load
属性. 直接使用v-lazy
无法加载图片.演示后发现不起作用.
Layout 布局
文档链接:https://vant-contrib.gitee.io/vant/#/zh-CN/col
两个组件: van-row
和 van-col
来构造栅格布局. 默认 24 分栏.
基本语法:
<van-row>
<van-col></van-col>
</van-row>
基本用法与其他框架一致. 常用属性有:
gutter
, 用来设置间距, 使用数组分别表示横向与纵向间距.justify
和align
对标flex
的对齐方式.span
和offset
来布局单元格.
Popup 弹框
文档地址: https://vant-contrib.gitee.io/vant/#/zh-CN/popup
基本用法:
<van-popup v-model:show=""></van-popup>
基本模型可以看成 antd
中的 Modal
这类组件.
常用属性:
position
属性, 控制弹窗位置, 可取值为:top
,bottom
,left
,right
. 默认是居中弹出.closeable
控制右上角显示关闭图标.- 监听事件:
open
,opened
,close
, 和closed
. 可以处理在关闭时对表单等数据做初始化. close-on-click-overlay
, 控制点击遮罩层关闭.before-close
关闭前的回调函数, 返回false
禁止关闭, 支持Promise
.
Space 间距
文档: https://vant-contrib.gitee.io/vant/#/zh-CN/space
基本用法:
<van-space></van-space>
常用属性:
- 默认水平排列, 且不会自动填充
- 使用
direction
属性来设置方向:vertical
表示竖直布局. size
用于定义间距.- 使用
align
设置对齐. fill
将 组件设置为块级元素, 填充容器.
Style 内置样式
文档地址: https://vant-contrib.gitee.io/vant/#/zh-CN/style
直接使用类样式名来使用:
- 文字省略:
van-ellipsis
,van-multi-ellipsis--l2
,van-multi-ellipsis--l3
. 1px
边框:van-hairline--{{direction}}
top
,bottom
,left
,right
,top-bottom
,surround
- 安全区 (适配 iPhoneX 的部分机型)
van-safe-area-top
,van-safe-area-bottom
- 动画
- 触碰反馈
van-haptics-feedback
- 清除浮动
van-clearfix
注意, 文字省略的多行文本后面的字母
l
, 不是数字1
.
动画的使用:
<transition name="..."></transition>
可用动画有:
van-fade
van-slide-up
van-slide-down
van-slide-left
van-slide-right
需要注意, 动画元素并未脱离文档流, 需要设置定位后, 再应用动画.
Toast 轻提示
网址: https://vant-contrib.gitee.io/vant/#/zh-CN/toast
一个函数式的 API. 在页面中显示一个半透明的黑色消息框.
需要导入使用, 语法:
import { showToast } from 'vant'
showToast('消息内容')
该组件提供了很多函数封装, 适用不同样式:
- 加载提示:
showLoadingToast
, 可用属性message
显示消息,forbidClick
禁用背景点击. - 成功失败提示:
showSuccessToast('成功文案')
,showFailToast('失败文案')
. - 自定义图标:
showToast()
, 使用icon
属性, 来指定图标. - 自定义位置:
showToast()
, 使用position
来设置位置, 可选top
,bottom
. - 文字换行方式:
showToast()
, 使用wordBreak
属性, 可取break-all
(截断单词换行),break-word
. - 动态更新提示.
showToast()
返回实例引用, 使用message
响应式属性即可. 逻辑上将duration
设置为 0, 不会自动关闭, 在利用计时器最后调用closeToast()
关闭提示框. 默认轻提示是单例的. - 多实例用法.
- 调用
allowMultipleToast()
方法. - 每次调用
showToast()
返回一个实例. - 调用实例的
close()
方法关闭.
- 调用
- 修改默认配置
- 调用
setToastOptions({ ... })
来进行配置. - 调用
resetToastDefaultOptions()
来重置. - 可以单独设置某个类型的 配置.
- 调用
- 组件用法 (逻辑上对标
antd
的Modal
), 需要定制提示内容时使用.- 单独注册组件 (例如全局注册)
- 使用
<van-toast></van-toast>
- 使用
v-model:show
控制显示 - 使用
message
插槽来定义内容