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


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 判断函数类型完美解决方案
Sep 02 Javascript
表单提交前触发函数返回true表单才会提交
Mar 11 Javascript
模拟一个类似百度google的模糊搜索下拉列表
Apr 15 Javascript
JS 使用for循环遍历子节点查找元素
Sep 06 Javascript
浅析JavaScript事件和方法
Feb 28 Javascript
浅谈利用JavaScript进行的DDoS攻击原理与防御
Jun 04 Javascript
javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】
Dec 15 Javascript
Bootstrap的基本应用要点浅析
Dec 19 Javascript
鼠标点击input,显示瞬间的边框颜色,对之修改与隐藏实例
Dec 26 Javascript
vsCode安装使用教程和插件安装方法
Aug 24 Javascript
一篇文章介绍redux、react-redux、redux-saga总结
May 23 Javascript
Vue接口封装的完整步骤记录
May 14 Vue.js
微信小程序时间标签和时间范围的联动效果
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
php利用新浪接口查询ip获取地理位置示例
2014/01/20 PHP
Discuz7.2版的faq.php SQL注入漏洞分析
2014/08/06 PHP
PHP中的替代语法介绍
2015/01/09 PHP
PHP统一页面编码避免乱码问题
2015/04/09 PHP
PHP实现json_decode不转义中文的方法
2017/05/20 PHP
浅析PHP echo 和 print 语句
2020/06/30 PHP
“不能执行已释放的Script代码”错误的原因及解决办法
2007/09/09 Javascript
传递参数的标准方法(jQuery.ajax)
2008/11/19 Javascript
Javascript 验证上传图片大小[客户端]
2009/08/01 Javascript
深入理解JavaScript系列(11) 执行上下文(Execution Contexts)
2012/01/15 Javascript
原生javaScript做得动态表格(注释写的很清楚)
2013/12/29 Javascript
jquery 图片缩放拖动的简单实例
2014/01/08 Javascript
js的[defer]和[async]属性
2014/11/24 Javascript
自己编写的支持Ajax验证的JS表单验证插件
2015/05/15 Javascript
详解浏览器渲染页面过程
2017/02/09 Javascript
Vue + Webpack + Vue-loader学习教程之相关配置篇
2017/03/14 Javascript
NodeJS链接MySql数据库的操作方法
2017/06/27 NodeJs
javascript原生封装一个淡入淡出效果的函数测试实例代码
2018/03/19 Javascript
vue.js 图片上传并预览及图片更换功能的实现代码
2018/08/27 Javascript
vue生命周期和react生命周期对比【推荐】
2018/09/19 Javascript
vue-router实现嵌套路由的讲解
2019/01/19 Javascript
基于 Python 实践感知器分类算法
2021/01/07 Python
使用Django的JsonResponse返回数据的实现
2021/01/15 Python
HTML5 3D衣服摇摆动画特效
2016/03/17 HTML / CSS
美国购买和销售礼品卡平台:Raise
2017/01/13 全球购物
自荐信的禁忌和要点
2013/10/15 职场文书
幼儿园托班开学寄语
2014/01/18 职场文书
一份创业计划书范文
2014/02/08 职场文书
财务总监管理职责范文
2014/03/09 职场文书
专业技术职务聘任书
2014/03/29 职场文书
竞聘演讲稿
2014/04/24 职场文书
如何使用CocosCreator对象池
2021/04/14 Javascript
pandas中DataFrame重置索引的几种方法
2021/05/24 Python
CSS 伪元素::marker详解
2021/06/26 HTML / CSS
Java面试题冲刺第十五天--设计模式
2021/08/07 面试题
SQL CASE 表达式的具体使用
2022/03/21 SQL Server