Skip to content

Rate 评分

该组件一般用于满意度调查,星型评分的场景。

平台差异说明

App(vue)App(nvue)H5微信小程序

基本使用

  • 通过count参数设置总共有多少颗星星可选择
  • 通过v-model双向绑定初始化时默认选中的星星数量
html
<template>
  <su-rate :count="count" v-model="value"></su-rate>
</template>

<script setup>
  import { ref } from 'vue'

  const count = ref(4)
  const value = ref(2)
</script>

自定义样式

  • 通过active-color设置选中的星星的颜色
  • 通过inactive-color设置未选中时星星的颜色
  • 通过gutter设置星星的间距,左右内边距各占gutter的一半
html
<su-rate active-color="#FA3534" inactive-color="#b2b2b2" gutter="20"></su-rate>

自定义图标

  • 通过active-icon设置激活的图标
  • 通过inactive-icon设置未激活的图标

下方示例为使用心形图标替代默认的星星图标:

html
<su-rate active-icon="heart-fill" inactive-icon="heart"></su-rate>

最少选中的数量

html
<su-rate :min-count="5"></su-rate>

禁用状态

禁用下,无法点击或者滑动选择,但是可以通过value设置默认选中的数量,禁用状态下用来展示分数,允许出现半星

html
<su-rate :current="3.7" :disabled="true"></su-rate>

只读状态

只读下,无法点击或者滑动选择,但是可以通过value设置默认选中的数量,禁用状态下用来展示分数,允许出现半星

html
<su-rate :current="3.7" :disabled="true"></su-rate>

示例源码

点击可以查看 右侧演示页面的源码

API

Props

参数说明类型默认值可选值
v-model/modelValue双向绑定选择星星的数量String | Number0-
count最多可选的星星数量String | Number5-
disabled是否禁止用户操作Booleanfalsetrue
readonly是否只读Booleanfalsetrue
size星星的大小,单位rpxString | Number32-
inactive-color未选中星星的颜色String#b2b2b2-
active-color选中的星星颜色String#FA3534-
gutter星星之间的距离String | Number10-
min-count最少选中星星的个数String | Number0-
allowHalf是否允许半星选择Booleanfalsetrue
active-icon选中时的图标名,只能为uView的内置图标Stringstar-fill-
inactive-icon未选中时的图标名,只能为uView的内置图标Stringstar-
touchable是否可以通过滑动手势选择评分Booleantruefalse

Events

事件名说明回调参数
change选中的星星发生变化时触发value:当前选中的星星的数量,如果使用v-model双向绑定方式,无需监听此事件

Released under the MIT License.

Released under the MIT License.