Vue.js 点击星星进行评价
来源:互联网 发布:软件怎么开发视频教程 编辑:程序博客网 时间:2024/05/16 16:05
1、评价等级(1、2、3、4、5)星
2、支持显示平均评价半星,不支持评价点击星星的时候半星
效果如图:
初始化显示:
点击星星显示:
步骤
CSC:添加一个显示全星,半星,空星的样式
JS: 如下,自定义一个组件
const LENGTH = 5;const CLS_ON = 'icon-grade-full'; // 全星const CLS_HALF = 'icon-grade-half'; // 半星const CLS_OFF = 'icon-grade-empty'; // 空星Vue.component('star-evaluation', { template: `<div class="star-evaluation"> <span v-for="(itemClass,index) in itemClasses" :class="itemClass" class="star" @click="selectStar(index,$event)" v-model="score"></span> </div>`, props: { //* propScore: { // 传入的变量 type: Number } }, data: function () { return { score: '' } }, methods: { selectStar: function (index, event) { console.log(event.target) // 点击当前星星索引值+1 this.score = index + 1; } }, computed: { //* 计算显示星星 itemClasses () { let result = []; // 返回的是一个数组,用来遍历输出星星 let score = Math.floor(this.score * 2) / 2; // 计算所有星星的数量 let hasDecimal = score % 1 !== 0; // 非整数星星判断 let integer = Math.floor(score); // 整数星星判断 for (let i = 0; i < integer; i++) { // 整数星星使用on result.push(CLS_ON);// 一个整数星星就push一个CLS_ON到数组 } if (hasDecimal) { // 非整数星星使用half result.push(CLS_HALF);// 类似 } while (result.length < LENGTH) { // 余下的用无星星补全,使用off result.push(CLS_OFF);// 类似 } return result; } }});HTML: 直接使用自定义的组件 prop-score 是传入的值,即点击后需要显示星星数量<star-evaluation :prop-score="3.5" @click.stop="selectStar"></star-evaluation>
阅读全文
0 0
- Vue.js 点击星星进行评价
- 评价星星点击效果
- js星星评价
- JS里星星评价
- 星星点击评价效果代码
- js写评价的星星
- 评价,星星
- [Js]评价中点星星的演示小demo
- 用星星显示评价
- Jquery星星评价插件
- 星星评价前后台
- 页面星星评价
- 星星评价效果
- Android 星星评价
- 【转载】星星打分评价
- 评价星星效果
- vue.js实现点击事件
- 填写评价。有评价星星和备注
- maven项目打包
- java ==
- List集合
- Animate.css 一款强大的预设动画库
- Kylin系列-分布式大数据多维分析(OLAP)引擎Apache Kylin安装配置及使用示例
- Vue.js 点击星星进行评价
- 解决Android二维码扫描ZXing竖屏拉伸变长闪退问题
- 欢迎使用CSDN-markdown编辑器
- 稀疏矩阵存储格式总结
- 使用gitblit在windows上部署git服务器
- 全网优秀IT博客导航
- 实现安全的缓存更新方法
- Java 学习笔记 开发环境搭建JDK+Tomcat+Eclipse
- POJ-2528 Mayor's posters (离散+线段树 区间修改 区间查询)