Rate 评分

介绍

用于对事物进行评级操作。

代码演示

基础用法

通过 v-model 来绑定当前评分值。

<z-rate v-model="value" />
import { ref } from 'vue';
const value = ref(3);

自定义图标

通过 icon 属性设置选中时的图标,void-icon 属性设置未选中时的图标。

<z-rate v-model="value" icon="heart-fill" void-icon="heart" />

自定义样式

通过 size 属性设置图标大小,color 属性设置选中时的颜色,void-color 设置未选中时的颜色。

<z-rate
  v-model="value"
  :size="35"
  color="#ffd21e"
  void-icon="star"
  void-color="#eee"
/>

半星

设置 allow-half 属性后可以选中半星。

<z-rate v-model="value" allow-half />
import { ref } from 'vue';
const value = ref(2.5);

自定义数量

通过 count 属性设置评分总数。

<z-rate v-model="value" :count="6" />

可清空

clearable 属性设置为 true,再次点击相同的值时,可以将值重置为 0

<z-rate v-model="value" clearable />

禁用状态

通过 disabled 属性来禁用评分。

<z-rate v-model="value" disabled />

只读状态

通过 readonly 属性将评分设置为只读状态。

<z-rate v-model="value" readonly />

只读状态显示小数

设置 readonlyallow-half 属性后,Rate 组件可以展示任意小数结果。

<z-rate v-model="value" readonly allow-half />
import { ref } from 'vue';
const value = ref(3.3);

监听 change 事件

评分变化时,会触发 change 事件。

<z-rate v-model="value" @change="onChange" />
import { ref } from 'vue';
import { useToast } from '../../uni_modules/zebra-ui'
const toast = useToast()
const value = ref(3);
const onChange = (value) => showToast('当前值:' + value);

API

Props

参数说明类型默认值
v-model当前分值number-
count图标总数number | string5
size图标大小,默认单位为pxnumber | string40rpx
gutter图标间距,默认单位为pxnumber | string8rpx
color选中时的颜色string#ee0a24
void-color未选中时的颜色string#c8c9cc
disabled-color禁用时的颜色string#c8c9cc
icon选中时的图标名称或图片链接,等同于 Icon 组件的 name 属性stringstar-fill
void-icon未选中时的图标名称或图片链接,等同于 Icon 组件的 name 属性stringstar
icon-prefix图标类名前缀,等同于 Icon 组件的 class-prefix 属性stringz-icon
allow-half是否允许半选booleanfalse
clearable是否允许再次点击后清除booleanfalse
readonly是否为只读状态,只读状态下无法修改评分booleanfalse
disabled是否禁用评分booleanfalse
touchable是否可以通过滑动手势选择评分booleantrue

Events

事件名说明回调参数
change当前分值变化时触发的事件currentValue: number

主题定制

样式变量

组件提供了下列 CSS 变量,可用于自定义样式,使用方法请参考 ConfigProvider 组件

名称默认值描述
--z-rate-icon-size40rpx-
--z-rate-icon-guttervar(--z-padding-base)-
--z-rate-icon-void-colorvar(--z-gray-5)-
--z-rate-icon-full-colorvar(--z-danger-color)-
--z-rate-icon-disabled-colorvar(--z-gray-5)-