微信小程序实现展示评分结果功能


Posted in Javascript onFebruary 15, 2019

本文实例为大家分享了微信小程序实现展示评分结果的具体代码,供大家参考,具体内容如下

星星评分展示1

根据评分展示整颗行星或者半颗星星

星星评分展示2

根据评分按照小数点展示整颗行星或者部分星星

wxml

<view class="conmmentbox">
 <view class="starbox">
 <view class="stars2" style="width: 130rpx"> 
  <view>
  <image src="../../image/token_img/lp_ct2.png"></image>
  <image src="../../image/token_img/lp_ct2.png"></image>
  <image src="../../image/token_img/lp_ct2.png"></image>
  <image src="../../image/token_img/lp_ct2.png"></image>
  <image src="../../image/token_img/lp_ct2.png"></image>
  </view>
 </view>
 <view class="stars" style="width: {{praisestars}};">
  <view>
  <image src="../../image/token_img/lp_dj1.png"></image>
  <image src="../../image/token_img/lp_dj1.png"></image>
  <image src="../../image/token_img/lp_dj1.png"></image>
  <image src="../../image/token_img/lp_dj1.png"></image>
  <image src="../../image/token_img/lp_dj1.png"></image>
  </view>
 </view> 
 </view>    
  {{ praiseNum }}分
</view>

wxss

.conmmentbox{
 display: inline-block;
 font-size: 22rpx;
 color: #F74754;
}
.conmmentstars{
 width: 26rpx;
 height: 26rpx;
}
.doortimes{
 color: #F74754;
 margin-left: 10rpx;
}
.starbox{
 width: 130rpx;
 height: 30rpx;
 position: relative;
 display: inline-block;
 overflow: hidden;
 float: left;
}
.stars{
 width: 130rpx;
 height: 30rpx;
 position: relative;
 top: 0;
 left: 0;
 overflow: hidden;
}
.stars2{
 height: 30rpx;
 width: 130rpx;
 overflow: hidden;
 position: absolute;
 top: 0;
 left: 0;
 overflow: hidden;
}
.stars image,.stars2 image{
 width: 26rpx;
 height: 26rpx;
 float: left;
 white-space:nowrap;
}
.stars view,.stars2 view{
 width: 130rpx;
 position: absolute;
}

js

//星星评分
var praiseNums=res.data.result.praiseNum;//获取数据评分
var praisestars=(praiseNums/5)*100+'%';
// console.log(praisestars);
that.setData({
 praisestars: praisestars
})

星星评分

单击星星,整颗星星

wxml

<!--pages/test/test.wxml--> 
<view> 
  <view>一:显示后台给的评分</view> 
  <block wx:for="{{one_1}}"> 
    <image src='../../images/use_sc2.png'></image> 
  </block> 
  <block wx:for="{{two_1}}"> 
    <image src='../../images/use_sc.png'></image> 
  </block> 
</view> 
<view>这里num给的是几分就显示几颗星星</view> 
<view style='margin-top:60px;'>二:显示用户选择的评分</view> 
<block wx:for="{{one_2}}" wx:key="index"> 
  <image catchtap='in_xin' id='{{index+1}}' data-in='use_sc2' src='../../images/use_sc2.png'></image> 
</block> 
<block wx:for="{{two_2}}" wx:key="index"> 
  <image catchtap='in_xin' id='{{index+1}}' data-in='use_sc' src='../../images/use_sc.png'></image> 
</block> 
<view>{{one_2}}星</view>

js

// pages/test/test.js 
Page({ 
 /** 
  * 统一满分为5星 
  */ 
 data: { 
  num: 4,//后端给的分数,显示相应的星星 
  one_1: '', 
  two_1: '', 
  one_2: 0, 
  two_2: 5 
 }, 
 onLoad: function (options) { 
  //情况一:展示后台给的评分 
    this.setData({ 
     one_1: this.data.num, 
     two_1: 5 - this.data.num 
    }) 
 }, 
 
 //情况二:用户给评分 
 in_xin:function(e){ 
  var in_xin = e.currentTarget.dataset.in; 
  var one_2; 
  if (in_xin === 'use_sc2'){ 
   one_2 = Number(e.currentTarget.id); 
  } else { 
   one_2 = Number(e.currentTarget.id) + this.data.one_2; 
  } 
  this.setData({ 
   one_2: one_2, 
   two_2: 5 - one_2 
  }) 
 } 
})

wxss

/* pages/test/test.wxss */ 
image{ 
 height: 60rpx; 
 width: 60rpx; 
 display: inline-block 
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
使用javascript获取flash加载的百分比的实现代码
May 25 Javascript
js用Date对象处理时间实现思路及代码
Jan 31 Javascript
Jquery Validate 正则表达式实用验证代码大全
Aug 23 Javascript
javascript中不等于的代码是什么怎么写
Dec 29 Javascript
JavaScript中用let语句声明作用域的用法讲解
May 20 Javascript
JavaScript DOM节点操作方法总结
Aug 23 Javascript
js实现时间轴自动排列效果
Mar 09 Javascript
关于vue单文件中引用路径的处理方法
Jan 08 Javascript
浅谈监听单选框radio改变事件(和layui中单选按钮改变事件)
Sep 10 Javascript
JS XMLHttpRequest原理与使用方法深入详解
Apr 30 Javascript
vue+element-ui JYAdmin后台管理系统模板解析
Jul 28 Javascript
浅谈vant组件Picker 选择器选单选问题
Nov 04 Javascript
微信小程序时间标签和时间范围的联动效果
Feb 15 #Javascript
微信小程序实现商品属性联动选择
Feb 15 #Javascript
微信小程序实现购物页面左右联动
Feb 15 #Javascript
微信小程序基于picker实现级联菜单
Feb 15 #Javascript
微信小程序实现多个按钮的颜色状态转换
Feb 15 #Javascript
详解react-refetch的使用小例子
Feb 15 #Javascript
小程序实现多列选择器
Feb 15 #Javascript
You might like
通过dbi使用perl连接mysql数据库的方法
2014/04/16 PHP
IIS6.0 开启Gzip方法及PHP Gzip函数分享
2014/06/08 PHP
php常用hash加密函数
2014/11/22 PHP
PHP接口并发测试的方法(推荐)
2016/12/15 PHP
PHP基于redis计数器类定义与用法示例
2018/02/08 PHP
PHP共享内存使用与信号控制实例分析
2018/05/09 PHP
php+Ajax无刷新验证用户名操作实例详解
2019/03/04 PHP
用js实现预览待上传的本地图片
2007/03/15 Javascript
javascript 字符串连接的性能问题(多浏览器)
2008/11/18 Javascript
jquery星级插件、支持页面中多次使用
2012/03/25 Javascript
js获取当前月的第一天和最后一天的小例子
2013/11/18 Javascript
jQuery中scrollLeft()方法用法实例
2015/01/16 Javascript
jQuery插件MovingBoxes实现左右滑动中间放大图片效果
2017/02/28 Javascript
详解Vuex中mapState的具体用法
2017/09/28 Javascript
vue-router路由懒加载和权限控制详解
2017/12/13 Javascript
微信小程序数据存储与取值详解
2018/01/30 Javascript
vue单页开发父子组件传值思路详解
2018/05/18 Javascript
原生js添加一个或多个类名的方法分析
2019/07/30 Javascript
原生JS实现相邻月份日历
2020/10/13 Javascript
Python中集合类型(set)学习小结
2015/01/28 Python
Windows和Linux下Python输出彩色文字的方法教程
2017/05/02 Python
《Python学习手册》学习总结
2018/01/17 Python
python实现linux下抓包并存库功能
2018/07/18 Python
pyinstaller 3.6版本通过pip安装失败的解决办法(推荐)
2020/01/18 Python
Python GUI编程学习笔记之tkinter界面布局显示详解
2020/03/30 Python
PyCharm2019 安装和配置教程详解附激活码
2020/07/31 Python
Python+unittest+requests 接口自动化测试框架搭建教程
2020/10/09 Python
python基于selenium爬取斗鱼弹幕
2021/02/20 Python
英国领先的瓷砖专家:Walls and Floors
2018/04/27 全球购物
2014年调度员工作总结
2014/11/19 职场文书
检讨书范文500字
2015/01/28 职场文书
2015年全民国防教育日活动总结
2015/03/23 职场文书
第二次离婚起诉书
2015/05/18 职场文书
2016年元旦致辞
2015/08/01 职场文书
Python语言规范之Pylint的详细用法
2021/06/24 Python
深入理解Pytorch微调torchvision模型
2021/11/11 Python