【区分vue2和vue3下的element UI ¶Rate 评分组件,分别详细介绍属性,事件 ...

打印 上一主题 下一主题

主题 511|帖子 511|积分 1533

在 Vue 2 和 Vue 3 的上下文中,Element UI 和 Element Plus(Element UI 的 Vue 3 版本)都提供了 el-rate 评分组件。然而,由于 Vue 3 和 Element Plus 的出现,API 和利用方式可能会有所不同。以下是对 Vue 2 的 Element UI 和 Vue 3 的 Element Plus 中的 el-rate 组件的详细比较和示例。
Vue 2 + Element UI

el-rate 组件

属性 (Attributes):


  • value: 绑定值,当前选中的评分
  • max: 答应的最大值,默认为 5
  • allow-half: 是否答应半选
  • low-threshold: 低分和中平分数的界限值,且值需要小于即是 max
  • high-threshold: 高分和中平分数的界限值,且值需要小于即是 max
  • colors: 自界说颜色列表,默认为 ['#F7BA2A', '#F7BA2A', '#F7BA2A', '#F7BA2A', '#F7BA2A']
  • void-color: 未选中时的颜色
  • disabled: 是否禁用
  • show-text: 是否体现辅助笔墨,默认为 false
  • show-score: 是否在右侧体现当前分数,默认为 false
  • text-template: 自界说分数文本的模板,如 {value} 代表分数
  • ...: 其他通用属性
事件 (Events):


  • change: 绑定值变化时触发
  • ...: 其他通用事件
方法 (Methods):


  • Element UI 的 el-rate 组件通常不提供直接调用的方法,而是通过属性和事件来控制其行为。
示例:
  1. <template>
  2.   <el-rate
  3.     v-model="value"
  4.     :max="5"
  5.     :allow-half="true"
  6.     :low-threshold="2"
  7.     :high-threshold="4"
  8.     @change="handleChange"
  9.     show-score
  10.   ></el-rate>
  11. </template>
  12. <script>
  13. export default {
  14.   data() {
  15.     return {
  16.       value: 0,
  17.     };
  18.   },
  19.   methods: {
  20.     handleChange(value) {
  21.       console.log('Rating changed: ', value);
  22.     },
  23.   },
  24. };
  25. </script>
复制代码
Vue 3 + Element Plus

在 Vue 3 中,你将利用 Element Plus 的 el-rate 组件,其 API 大致雷同,但可能会有一些差别或新增功能。你应该查阅 Element Plus 的官方文档以获取最新的信息。
示例:
在 Vue 3 中利用 Element Plus 的 el-rate 组件的示例代码与 Vue 2 雷同,但你需要利用 Composition API 来界说响应式的数据和方法。
  1. <template>
  2.   <!-- 模板部分与 Vue 2 示例类似 -->
  3.   <el-rate
  4.     v-model="rateValue"
  5.     :max="5"
  6.     :allow-half="true"
  7.     :low-threshold="2"
  8.     :high-threshold="4"
  9.     @change="onRateChange"
  10.     show-score
  11.   ></el-rate>
  12. </template>
  13. <script>
  14. import { ref } from 'vue';
  15. export default {
  16.   setup() {
  17.     const rateValue = ref(0);
  18.     const onRateChange = (value) => {
  19.       console.log('Rating changed: ', value);
  20.     };
  21.     return {
  22.       rateValue,
  23.       onRateChange,
  24.     };
  25.   },
  26. };
  27. </script>
复制代码
请留意,以上示例代码是基于 Element UI 和 Element Plus 的常见 API 编写的,并假设了某些属性的默认值。在实际利用中,你应该根据项目的具体需求和库的版本查阅官方文档。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

风雨同行

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表