本文实例为大家分享了微信小程序星级评价的具体代码,供大家参考,具体内容如下
效果图
wxml
- <view class='assess-star'>
- <view class='star-wrap'>
- <view class='star-item' wx:for="{{stars}}" wx:key="" style='background:url("{{item.flag==1?item.lightImg:item.blackImg}}") no-repeat top;background-size:100%;' data-index="{{index}}" bindtap='starClick'></view>
- </view>
- <view class='star-desc'>{{starDesc}}</view>
- </view>
wxss
- .assess-star {
- margin-top: 20rpx;
- }
- .star-wrap {
- width: 50vw;
- margin: 10rpx auto 10rpx auto;
- }
- .star-item {
- display: inline-block;
- height: 60rpx;
- width: 60rpx;
- margin-right: 10rpx;
- }
- .star-desc {
- font-size: 30rpx;
- font-family: PingFangSC-Regular;
- font-weight: 400;
- color: rgba(243,162,1);
- text-align: center;
- }
js
- Page({
- /**
- * 页面的初始数据
- */
- data: {
- starDesc: '非常满意,无可挑剔',stars: [{
- lightImg: '../../../../images/xing.png',blackImg: '../../../../images/xing1.png',flag: 1,message: '非常不满意,各方面都很差'
- },{
- lightImg: '../../../../images/xing.png',message: '不满意,比较差'
- },message: '一般,还要改善'
- },message: '比较满意,仍要改善'
- },message: '非常完美,无可挑剔'
- }]
- },// 选择评价星星
- starClick: function(e) {
- var that = this;
- for (var i = 0; i < that.data.stars.length; i++) {
- var allItem = 'stars[' + i + '].flag';
- that.setData({
- [allItem]: 2
- })
- }
- var index = e.currentTarget.dataset.index;
- for (var i = 0; i <= index; i++) {
- var item = 'stars[' + i + '].flag';
- that.setData({
- [item]: 1
- })
- }
- this.setData({
- starDesc: this.data.stars[index].message
- })
- },/**
- * 生命周期函数--监听页面加载
- */
- onLoad: function(options) {
- },/**
- * 生命周期函数--监听页面初次渲染完成
- */
- onReady: function() {
- },/**
- * 生命周期函数--监听页面显示
- */
- onShow: function() {
- },/**
- * 生命周期函数--监听页面隐藏
- */
- onHide: function() {
- },/**
- * 生命周期函数--监听页面卸载
- */
- onUnload: function() {
- },/**
- * 页面相关事件处理函数--监听用户下拉动作
- */
- onPullDownRefresh: function() {
- },/**
- * 页面上拉触底事件的处理函数
- */
- onReachBottom: function() {
- },/**
- * 用户点击右上角分享
- */
- onShareAppMessage: function() {
- }
- })