Rate 评分
用于展示或收集评分。
基础用法
评分组件将分数划分为若干等级,可用不同背景色区分。默认各级颜色相同;也可通过 colors 传入长度为 3 的数组表示低、中、高三个等级对应颜色,并用 low-threshold、high-threshold 定义两个分界阈值;或传入以阈值为键、颜色为值的对象进行更细粒度配置。
Default
Color for different levels
尺寸
允许半选
设置 allow-half 可选择半星。
显示辅助文字
使用文字说明当前分值。
设置 show-text 在评分右侧显示文案;通过 texts 为各分数配置对应文字,其长度应与最大分值 max 一致。
可再次清空
再次点击当前已选分值可将绑定值重置为 0。
自定义图标
可用不同图标区分多个评分组件。
通过 icons 传入长度为 3 的数组,或以阈值为键、图标为值的对象自定义各级图标。本例还使用 void-icon 设置未选中时的图标。
只读
只读评分用于展示分数,支持半星。
使用 disabled 使组件只读;show-score 在右侧显示数值;score-template 自定义分数模板,需包含 {value},展示时会被替换为实际分值。
3.7 points
自定义样式
可通过全局或局部 CSS 变量调整评分颜色,常用变量:--u-rate-void-color、--u-rate-fill-color、--u-rate-disabled-void-color、--u-rate-text-color。例如::root { --u-rate-void-color: red; --u-rate-fill-color: blue; }。
默认变量
| 变量名 | 默认颜色 |
|---|---|
| --u-rate-void-color | var(--u-border-color-darker) |
| --u-rate-fill-color | #f7ba2a |
| --u-rate-disabled-void-color | var(--u-fill-color) |
| --u-rate-text-color | var(--u-text-color-primary) |
评分 API
评分 属性
| 名称 | 说明 | 类型 | 默认值 |
|---|---|---|---|
| model-value / v-model | 绑定值 | number | 0 |
| max | 最大分值 | number | 5 |
| size | 尺寸 | enum | — |
| disabled | 是否只读 | boolean | false |
| allow-half | 是否允许半选 | boolean | false |
| low-threshold | 低分与中等分界阈值(含该值仍属低分区间) | number | 2 |
| high-threshold | 中等与高分分界阈值(含该值属高分区间) | number | 4 |
| colors | 各级颜色;为数组时须 3 项对应分数等级;为对象时键为等级间阈值、值为颜色 | array / object | ['#f7ba2a', '#f7ba2a', '#f7ba2a'] |
| void-color | 未选中图标颜色 | string | #c6d1de |
| disabled-void-color | 只读时未选中图标颜色 | string | #eff2f7 |
| icons | 各级图标;数组须 3 项;对象键为阈值、值为图标组件 | array / object | [StarFilled, StarFilled, StarFilled] |
| void-icon | 未选中图标组件 | string / Component | Star |
| disabled-void-icon | 只读时未选中图标组件 | string / Component | StarFilled |
| show-text | 是否显示辅助文字 | boolean | false |
| show-score | 是否显示当前分数;与 show-text 不可同时为 true | boolean | false |
| text-color | 辅助文字颜色 | string | '' |
| texts | 各分数对应文案数组 | array | ['极差', '失望', '一般', '满意', '惊喜'] |
| score-template | 分数展示模板 | string | |
| clearable | 是否可点击当前值清空为 0 | boolean | false |
| id | 原生 id | string | — |
| aria-label a11y | 同原生 aria-label | string | — |
评分 事件
| 事件名 | 说明 | 类型 |
|---|---|---|
| change | 分值变化时触发 | Function |
评分 方法
| 名称 | 说明 | 类型 |
|---|---|---|
| setCurrentValue | 设置当前分值 | Function |
| resetCurrentValue | 重置当前分值 | Function |