微信小程序實現五星評價

本文實例為大傢分享瞭微信小程序實現五星評價的具體代碼,供大傢參考,具體內容如下

首先準備兩張圖片,在阿裡巴巴矢量圖標庫中隨便下兩個顏色不一樣的星星

效果如下

wxml

循環五次圖片,添加點擊事件

<view class="card_start flex">
    <span style="font-size: 28rpx;">服務評價</span>
       <image class="imagecls" wx:for="{{5}}" wx:key="index" data-name="technicianAssessStar" data-item="{{item}}"
    src="{{item-technicianAssessStar+1>0?'/image/self_img/start-noColor.png':'/image/self_img/start-color.png'}}"
    bindtap="start_technician"></image>
    <span class="ft-size-28 titleRight">{{technician_content}}</span>
</view>

默認五顆星(超贊)

js

data:{
    technicianAssessStar: 5, // 服務技師評價,默認五顆星
    technician_content:'超贊',
}
// 服務評價 技師
  start_technician: function (e) {
    var technicianAssessStar = e.currentTarget.dataset.item + 1;
    var variable = e.currentTarget.dataset.name;
    console.log(technicianAssessStar, e)
    console.log(variable)
    if (variable === "technicianAssessStar")
      if (technicianAssessStar === 1) {
        this.setData({
          technician_content: '很差',
        })
      } else if (technicianAssessStar === 2) {
      this.setData({
        technician_content: '差',
      })
    } else if (technicianAssessStar === 3) {
      this.setData({
        technician_content: '一般',
      })
    } else if (technicianAssessStar === 4) {
      this.setData({
        technician_content: '贊',
      })
    } else if (technicianAssessStar === 5) {
      this.setData({
        technician_content: '超贊',
      })
    }
    this.setData({
      technicianAssessStar: technicianAssessStar,
    })
  },

打印的數據

wxss

.flex {
  display: flex;
}
.card_start {
  margin-top: 32rpx;
}
.imagecls {
  height: 45rpx;
  width: 45rpx;
  padding: 0 20rpx;
}
.ft-size-28 {
  font-size: 28rpx;
}
.titleRight {
  color: rgba(0, 0, 0, 0.25)
}

以上就是本文的全部內容,希望對大傢的學習有所幫助,也希望大傢多多支持WalkonNet。

推薦閱讀: