微信小程序实现星星评分组件(原生)
1.实现效果
2.组件介绍
3.部分代码
// components/rating/index.js
Component({/*** 组件的属性列表*/properties: {stars:{type:Array,value:[1,1,1,1,1]},// 是否只读readOnly:{type:Boolean,value:false,},// 星星大小starWidth:{type:Number,value:54,},// 显示分数showRating:{type:Boolean,value:false,},rating:{type:Number,value:'',}},/*** 组件的初始数据*/data: {},lifetimes:{// 页面创建时执行attached(){let rating=this.properties.ratingswitch (rating) {case 1:this.properties.stars=[2,1,1,1,1]break;case 2:this.properties.stars=[2,2,1,1,1]break;case 3:this.properties.stars=[2,2,2,1,1]break;case 4:this.properties.stars=[2,2,2,2,1]break;case 5:this.properties.stars=[2,2,2,2,2]break;}this.setData({stars:this.properties.stars})}},/*** 组件的方法列表*/methods: {/*** 选择星星* @param {*} e*/choseStar: function (e) {let {stars}=this.data;stars.forEach((item,index)=> {stars[index] = 1;this.setData({stars,})})var {index} = e.currentTarget.dataset;for (var i = 0; i <= index; i++) {var item = 'stars[' + i + ']';this.setData({[item]: 2})}let a = this.data.stars.filter(item => item == 2)this.setData({rating: a.length})this.triggerEvent('click',this.data.rating);},}
})
4.完整代码
https://gitee.com/susuhhhhhh/components
5.更多小程序案例
https://gitee.com/susuhhhhhh/wxmini_demo
微信小程序实现星星评分组件(原生)相关推荐
- 微信小程序实现星星评分效果
微信小程序实现星星评分效果 思路很简单,小星星都是一张张独立的图片,点击的时候改变图片的路径就可以了. 我是用背景图片做的,先给盒子设置背景图片为灰色的小星星,盒子是根据js文件中的stars数组循环 ...
- 微信小程序 制作五星评分组件
这是自己做的一个五星评分组件,直接放项目里用,没有抽取为一个单独的组件,因为本身就很小,下面是一个纯显示的五星评级,如果需要打分,可以在image上加上点击事件,动态改变值. index.wxml & ...
- 微信小程序实现星星评分-整颗星星评分、半颗星星评分、任意颗星星展示
一.实现整颗星星评分(默认一颗星) 1.效果图 2.准备图片 3.remark.wxml <view class="stars"><view wx:for=&qu ...
- 微信小程序实现星星评分
1.实现效果 点击星星 =>文字相应选中 点击文字=>星星相应的选中1-5个 2.实现原理 1.默认所有星星的选中值为1,1表示不选中,2表示选中. 2.获取当前星星的index值,假设此 ...
- 关于微信小程序如何使用Vant组件
微信小程序如何使用Vant组件 前言 一.微信小程序自动查找 第二种 前言 今天闲着没事,兴趣来了,想写写微信小程序,用原生的敲,因为懒得原因,不想再去封装一些组件库,就想当Vant,引用Vant真的 ...
- 微信小程序自定义导航栏组件
效果图 首先要先在 json文件里加上 "navigationStyle":"custom", 这句,去掉原生的自定义导航栏 一.子组件-wxml <vi ...
- 微信小程序下拉框插件_微信小程序下拉框组件使用方法详解
本文实例为大家分享了微信小程序下拉框组件的使用方法,供大家参考,具体内容如下 适用场景 1.省市三级联动 2.出生日期选择 3.性别选择 4.一般性的下拉选择等 一.省市三级联动使用 注意mode = ...
- 微信小程序引入骨架屏组件
微信小程序引入骨架屏组件 参考地址:https://github.com/cytle/ma-skeleton.git 1.克隆项目 2.把项目里的组件skeleton文件复制到自己的项目里 3.复制& ...
- 微信小程序入门之常用组件(04)
常见组件 重点讲解微信小程序中常见的布局组件 view,text,rich-text,button,image,navigator,icon,swiper, radio,checkbox 等 一.vi ...
最新文章
- CoCreateInstance(转)
- Linux追加文件内容并在内容前加上该文件名(awk, FILENAME功能妙用)
- CentOS6.4之文本编辑器Vi/Vim
- python入门教程共四本书籍-Python入门经典书籍有哪些?有这三本就够了
- 统计学习方法第二十章作业:潜在狄利克雷分配 LDA 吉布斯抽样法算法 代码实现
- Typescript 和 Javascript之间的区别
- Node.js怎么处理数据库中日期类型
- 含有bin的mysql_MySQL 5.7.18 release版安装指南(含有bin文件版本)
- steam第三方授权登录不稳定(openid4java)
- 代码质量保证体系(上)
- 【技术贴】图文教程 最新QQ空间免费背景音乐添加方法||QQ空间免费添加背景音乐。...
- RSF 分布式 RPC 服务信息的暴露
- bootstrap的datetimepicker使用(1.将默认的英文设置为中文2.选择日月年的时候记录之前的操作)...
- 小 V 视频号下载工具(可下载所有视频号中的视频+公众号中的部分视频、音频)
- Chrome开发工具Network没有显示完整的http request和response对话
- 【机器学习】一些常用的回归模型实战(9种回归模型)
- 孢子:银河大冒险 for Mac模拟经营游戏
- 网络音乐api接口,歌词api接口,免费
- 华为ensp NAT 相关配置
- PHP高并发下单解决方案