Skip to content

Rate 评分

该组件用于对事物进行评级操作,例如商品评分、服务评价等场景。

  • 支持半星评分
  • 支持自定义图标和颜色
  • 支持清除已选评分
  • 可自定义星星数量和间距

注意

该组件在不同平台上的表现可能存在细微差异,请以实际效果为准。

平台差异说明

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

基本使用

  • 通过 v-model 绑定评分值,默认值为 0
  • 通过 count 设置星星总数,默认为 5
html
<see-rate v-model="value" />

<script lang="ts" setup>
import { ref } from 'vue';
const value = ref(3);
</script>

半星评分

  • 通过设置 allowHalftrue 来启用半星评分。
html
<see-rate v-model="value" allowHalf />

<script lang="ts" setup>
import { ref } from 'vue';
const value = ref(3.5);
</script>

自定义图标

  • 通过 icon 设置选中时的图标。
  • 通过 voidIcon 设置未选中时的图标。
html
<see-rate v-model="value" icon="♥" voidIcon="♡" />

<script lang="ts" setup>
import { ref } from 'vue';
const value = ref(3);
</script>

自定义颜色

  • 通过 color 设置选中时的颜色。
  • 通过 voidColor 设置未选中时的颜色。
html
<see-rate v-model="value" color="#ff6b00" voidColor="#ddd" />

<script lang="ts" setup>
import { ref } from 'vue';
const value = ref(4);
</script>

清除评分

  • 通过设置 isClearabletrue,允许再次点击相同评分进行清除(值重置为 0)。
html
<see-rate v-model="value" isClearable />

<script lang="ts" setup>
import { ref } from 'vue';
const value = ref(3);
</script>

禁用状态

  • 通过设置 isDisabledtrue 来禁用评分组件。
  • 禁用状态下,点击事件不会触发,且样式会变灰或降低透明度。
html
<see-rate v-model="value" isDisabled />

<script lang="ts" setup>
import { ref } from 'vue';
const value = ref(3);
</script>

只读状态

  • 通过设置 isReadonlytrue 来设置评分为只读状态。
  • 只读状态下,点击事件不会触发,但样式保持不变。适用于展示已有评分的场景。
html
<see-rate v-model="value" isReadonly />

<script lang="ts" setup>
import { ref } from 'vue';
const value = ref(4.5);
</script>

API

Props

参数名说明类型默认值可选值平台差异
modelValue绑定值number0--
count星星总数number5任意正整数-
size星星大小(px)number24任意正数-
isDisabled是否禁用booleanfalsetruefalse-
isReadonly是否只读booleanfalsetruefalse-
allowHalf是否允许半星booleanfalsetruefalse-
isClearable是否允许清除booleanfalsetruefalse-
color选中颜色string-任意 CSS 颜色值-
voidColor未选中颜色string-任意 CSS 颜色值-
icon选中图标string'★'任意字符或图标-
voidIcon未选中图标string'☆'任意字符或图标-
gap星星间距(px)number4任意正数-
name表单字段名string''--

Events

事件名说明回调参数
onChange评分值变化时触发value: 当前评分值

辽 ICP 备 2025070134 号