Rate 评分
介绍
用于对事物进行评级操作。
引入
在app.json
或index.json
中引入组件,详细介绍见快速上手。
"usingComponents": {
"van-rate": "@vant/weapp/rate/index"
}
代码演示
基础用法
<van-rate value="{{ value }}" bind:change="onChange" />
Page({
data: {
value: 3,
},
onChange(event) {
this.setData({
value: event.detail,
});
},
});
自定义图标
<van-rate
value="{{ value }}"
icon="like"
void-icon="like-o"
bind:change="onChange"
/>
自定义样式
<van-rate
value="{{ value }}"
size="{{ 25 }}"
color="#ffd21e"
void-icon="star"
void-color="#eee"
bind:change="onChange"
/>
半星
<van-rate
value="{{ value }}"
allow-half
void-icon="star"
void-color="#eee"
bind:change="onChange"
/>
Page({
data: {
value: 2.5,
},
onChange(event) {
this.setData({
value: event.detail,
});
},
});
自定义数量
<van-rate value="{{ value }}" count="{{ 6 }}" bind:change="onChange" />
禁用状态
<van-rate disabled value="{{ value }}" bind:change="onChange" />
只读状态
<van-rate readonly value="{{ value }}" bind:change="onChange" />
监听 change 事件
评分变化时,会触发 change
事件。
<van-rate value="{{ value }}" bind:change="onChange" />
Page({
data: {
value: 2,
},
onChange(event) {
Toast('当前值:' + event.detail);
},
});
API
Props
参数 | 说明 | 类型 | 默认值 |
---|---|---|---|
name | 在表单内提交时的标识符 | string | - |
value | 当前分值 | number | - |
count | 图标总数 | number | 5 |
size | 图标大小,默认单位为 px | string | number | 20px |
gutter | 图标间距,默认单位为 px | string | number | 4px |
color | 选中时的颜色 | string | #ffd21e |
void-color | 未选中时的颜色 | string | #c7c7c7 |
icon | 选中时的图标名称或图片链接,可选值见 Icon 组件 | string | star |
void-icon | 未选中时的图标名称或图片链接,可选值见 Icon 组件 | string | star-o |
allow-half | 是否允许半选 | boolean | false |
readonly | 是否为只读状态 | boolean | false |
disabled | 是否禁用评分 | boolean | false |
disabled-color | 禁用时的颜色 | string | #bdbdbd |
touchable | 是否可以通过滑动手势选择评分 | boolean | true |
Events
事件名称 | 说明 | 回调参数 |
---|---|---|
change | 当前分值变化时触发的事件 | event.detail:当前分值 |
外部样式类
类名 | 说明 |
---|---|
custom-class | 根节点样式类 |
icon-class | 图标样式类 |