关于微信小程序五星评分效果的实现

广告:宝塔Linux面板高效运维的服务器管理软件 点击【 https://www.bt.cn/p/uNLv1L 】立即购买

关于微信小程序五星评分效果的实现

这篇文章主要介绍了微信小程序五星评分效果实现代码的相关资料,需要的朋友可以参考下

微信小程序五星评分效果实现代码

很多做过电商项目的朋友会经常用到评分的功能,我这里正好写了一个例子,发出来分享一下:

我写的是5分满分制的,首先,准备3个图片,

,像这样的,分别代表分数为0,0.5,1 时的状态,

效果图:(以3.5为例)

然后上代码:

js:

function pingfenxing(pingfen){   var that=this,  //这里是图片的路径,自己需要改     data={     ling:"img/pingfen0.png",     zheng:"img/pingfen2.png",     ban:"img/pingfen1.png"    },     nums=[];//这里是返回图片排列的顺序的数组,这里要注意在页面使用的时候图片的路径,不过使用网络图片无所谓    if((pingfen/0.5)%2==0){//如果评分为整数,如4.0、5.0     for(var i=0;i<5;i++){      if(i<pingfen){       nums.push(data.zheng);      }else{       nums.push(data.ling);      }     }   }else{//评分不为整数,如3.5、2.5     for(var i=0;i<5;i++){      if(i<pingfen-0.5){       nums.push(data.zheng);//先把整数分离出来,如:3.5,这里就是先把3分离出来,把代表1的图片放进去      }else if(i==(pingfen-0.5)){       nums.push(data.ban);//把小数的部分分离出来,如:3.5里的0.5,把代表0.5的图片放进去      }else{       nums.push(data.ling);//然后剩下的就是没有满的用代表0的图片放进去,如:3.5,里面放进去了3个代表1的图片,然后放入了1个代表0.5的图片,最后还剩一个图片的位置,这时候就放代表0的图片      }     }   }    return num; } module.exports = {   pingfen:pingfenxing }
登录后复制

WXML代码:

<view class="pingfen">   <block wx:for="{{item.pingfenpic}}" wx:key="{{item.id}}" wx:for-item="pingfen">      <image class="img" src="{{pingfen}}"></image>   </block>   <text data-pingfen="{{item.pingfen}}" >{{item.pingfen}}</text></view>
登录后复制

使用这个功能的页面的JS代码:

var pingxin=require("../../utils/pingxing.js");Page({  data:{    tuangou:tuangou}//我这里是在页面加载的时候先从后台获取数据,把数据的值赋值给tuangou,然后遍历将数据里面的参数拿出来,然后再把相应的评分中的图片排列顺序放到这条数据中的pingfenpic中保存,然后在页面中渲染即可onLoad:function(options){  console.log('onLoad');  var that=this;  // 页面初始化 options为页面跳转所带来的参数  wx.request({   url: 'https://wxapp.com/tuangou',//这里是你请求数据的接口地址,自己填写   data: {},   method: 'GET',   success: function(res){    // success    console.log(res.data.tuangou);    let tuangou=res.data.tuangou;    for(let i=0;i<tuangou.length;i++){      tuangou[i].pingfenpic=pingxin.pingfen(parseFloat(tuangou[i].pingfen));//使用函数将评分变为图片排列的数组,这里要注意,如果评分传过来的是字符串 需要将它变为数字    }    that.setData({     tuangou:tuangou    });    console.log(that.data.tuangou);   },   fail: function() {    // fail   },   complete: function() {    // complete   }  });  }});
登录后复制

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

微信小程序中天气预报开发的代码

微信小程序之电影影评小程序的制作

微信小程序 高德地图SDK的解析

以上就是关于微信小程序五星评分效果的实现的详细内容,更多请关注9543建站博客其它相关文章!

广告:SSL证书一年128.66元起,点击购买~~~

9543建站博客
一个专注于网站开发、微信开发的技术类纯净博客。
作者头像
admin创始人

肥猫,知名SEO博客站长,14年SEO经验。

上一篇:Yii框架中的错误页面与异常处理
下一篇:微信支付开发对账单

发表评论

关闭广告
关闭广告