ElementPlus Rate 评分

评分组件

基础用法

ElementPlus Rate 评分

默认不区分颜色

区分颜色

评分默认被分为三个等级,可以利用颜色数组对分数及情感倾向进行分级(默认情况下不区分颜色)。三个等级所对应的颜色用colors属性设置,而它们对应的两个阈值则通过 low-threshold 和 high-threshold 设定。你也可以通过传入颜色对象来自定义分段,键名为分段的界限值,键值为对应的颜色。

<template>
  <div class="block">
  <span class="demonstration">默认不区分颜色</span>
  <el-rate v-model="value1"></el-rate>
</div>
<div class="block">
  <span class="demonstration">区分颜色</span>
  <el-rate v-model="value2" :colors="colors"> </el-rate>
</div>
</template>

<script>
  export default {
    data() {
      return {
        value1: null,
        value2: null,
        colors: [#99A9BF, #F7BA2A, #FF9900], // 等同于 { 2: #99A9BF, 4: { value: #F7BA2A, excluded: true }, 5: #FF9900 }
      }
    },
  }
</script>

允许半选

ElementPlus Rate 评分

属性 allow-half 允许出现半星

<template>
  <div class="block">
  <el-rate v-model="value" allow-half />
</div>
</template>

<script>
  export default {
    data() {
      return {
        value: null,
      }
    },
  }
</script>

辅助文字

ElementPlus Rate 评分

用辅助文字直接地表达对应分数

为组件设置 show-text 属性会在右侧显示辅助文字。通过设置 texts 可以为每一个分值指定对应的辅助文字。texts 为一个数组,长度应等于最大值 max。

<template>
  <el-rate v-model="value" show-text> </el-rate>
</template>

<script>
  export default {
    data() {
      return {
        value: null,
      }
    },
  }
</script>

其它 icon

ElementPlus Rate 评分

当有多层评价时,可以用不同类型的 icon 区分评分层级

设置icon-classes属性可以自定义不同分段的图标。若传入数组,共有 3 个元素,为 3 个分段所对应的类名;若传入对象,可自定义分段,键名为分段的界限值,键值为对应的类名。本例还使用void-icon-class指定了未选中时的图标类名。

<template>
  <el-rate
  v-model="value"
  :icon-classes="iconClasses"
  void-icon-class="icon-rate-face-off"
  :colors="[#99A9BF, #F7BA2A, #FF9900]"
>
</el-rate>
</template>

<script>
  export default {
    data() {
      return {
        value: null,
        iconClasses: [
          icon-rate-face-1,
          icon-rate-face-2,
          icon-rate-face-3,
        ], // 等同于 { 2: icon-rate-face-1, 4: { value: icon-rate-face-2, excluded: true }, 5: icon-rate-face-3 }
      }
    },
  }
</script>

只读

ElementPlus Rate 评分

只读的评分用来展示分数,允许出现半星

 为组件设置 disabled 属性表示组件为只读,支持小数分值。此时若设置 show-score,则会在右侧显示目前的分值。可以提供 score-template 作为显示模板,模板为一个包含了 {value} 的字符串,{value} 会被解析为分值。

<template>
  <el-rate
  v-model="value"
  disabled
  show-score
  text-color="#ff9900"
  score-template="{value}"
>
</el-rate>
</template>

<script>
  export default {
    data() {
      return {
        value: 3.7,
      }
    },
  }
</script>

Attributes

参数说明类型可选值默认值
model-value / v-model绑定值number0
max最大分值number5
disabled是否为只读booleanfalse
allow-half是否允许半选booleanfalse
low-threshold低分和中等分数的界限值,值本身被划分在低分中number2
high-threshold高分和中等分数的界限值,值本身被划分在高分中number4
colorsicon 的颜色。若传入数组,共有 3 个元素,为 3 个分段所对应的颜色;若传入对象,可自定义分段,键名为分段的界限值,键值为对应的颜色array/object[#F7BA2A, #F7BA2A, #F7BA2A]
void-color未选中 icon 的颜色string#C6D1DE
disabled-void-color只读时未选中 icon 的颜色string#EFF2F7
icon-classesicon 的类名。若传入数组,共有 3 个元素,为 3 个分段所对应的类名;若传入对象,可自定义分段,键名为分段的界限值,键值为对应的类名array/object[el-icon-star-on, el-icon-star-on,el-icon-star-on]
void-icon-class未选中 icon 的类名stringel-icon-star-off
disabled-void-icon-class只读时未选中 icon 的类名stringel-icon-star-on
show-text是否显示辅助文字,若为真,则会从 texts 数组中选取当前分数对应的文字内容booleanfalse
show-score是否显示当前分数,show-score 和 show-text 不能同时为真booleanfalse
text-color辅助文字的颜色string#1F2D3D
texts辅助文字数组array[极差, 失望, 一般, 满意, 惊喜]
score-template分数显示模板string{value}

Events

事件名称说明回调参数
change分值改变时触发改变后的分值

作者:terry,如若转载,请注明出处:https://www.web176.com/elementplus/19861.html

(0)
打赏 支付宝 支付宝 微信 微信
terryterry
上一篇 2023年5月8日
下一篇 2023年5月8日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注