评分组件
评分组件,多用于购买商品后,对商品进行评价等场景
项目下有一个 /pages/uni-ui/rate/rate.uvue 页面,里面演示了rate组件的各种用法。
rate组件是投票评分使用的组件。它使用unicode字符实现,通过修改字体的样式,实现各种效果。
它分2个版本,一个版本是高性能版本,只有一层,不显示灰星,仅显示亮星,亮星不支持小数点,不能点击。适于长列表中显示。 另一个版本是普通版本,由背景灰星和前景亮星叠加而成,支持小程序点,支持点击。 这2个版本通过属性full来切换。
本组件支持v-model绑定响应式数据。
rate组件有如下属性:
rate组件有onChange事件,事件回调中会给出点击触发的新评分值。
| Web | 微信小程序 | Android | iOS | HarmonyOS | HarmonyOS(Vapor) |
|---|---|---|---|---|---|
| 4.0 | 4.41 | 3.9 | 4.11 | 4.61 | 5.08 |
| 名称 | 类型 | 默认值 | 兼容性 | 描述 |
|---|---|---|---|---|
| value | number | undefined | - | - | 当前评分,取值范围 0~5 的数字 |
| modelValue | number | undefined | - | - | v-model 绑定值,支持双向绑定,优先级高于 value |
| full | boolean | undefined | - | - | 是否显示完整 5 颗星。为 true 时用灰星填充未选中位置;为 false 时仅显示亮星,性能更高但不支持点击交互 |
| readonly | boolean | undefined | - | - | 是否只读,为 true 时不响应点击评分(full 为 false 时始终只读) |
| plain | boolean | undefined | - | - | 灰星是否使用镂空样式(☆),为 false 时使用实心灰星(★) |
| starClass | classString | undefined | - | - | 灰星(未选中)的自定义样式类 |
| starStyle | string | undefined | - | - | 灰星(未选中)的内联样式 |
| starActiveClass | classString | undefined | - | - | 亮星(选中)的自定义样式类 |
| starActiveStyle | string | undefined | - | - | 亮星(选中)的内联样式 |
| @change | Event | - | - | - |
| @update:modelValue | Event | - | - | - |