微信小程序用户评分实例

微信小程序用户评分实例!成都小程序开发实例为大家分享了微信小程序实现展示评分结果的具体代码,供大家参考,具体内容如下

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

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

wxml

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

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

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

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
}

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
}

原文地址:https://www.cnblogs.com/hsccxt/p/10384533.html

时间: 2024-11-05 12:15:18

微信小程序用户评分实例的相关文章

使用CryptoJS解决微信小程序用户信息解密

使用CryptoJS解决微信小程序用户信息解密 问题描述: wx.getUserInfo(OBJECT)微信官方的这个获取用户信息的方法,需要对接口返回的加密数据( encryptedData )进行对称解密. 微信官方有提供加密数据解密算法 接口如果涉及敏感数据(如wx.getUserInfo当中的 openId 和unionId ),接口的明文内容将不包含这些敏感数据.开发者如需要获取敏感数据,需要对接口返回的加密数据( encryptedData )进行对称解密. 解密算法如下: 对称解密

微信小程序用户信息解密失败导致的内存泄漏问题。

微信小程序获取用户解密的Session_key 然后对 encryptedData进行解密 偶尔报错 时间长了之后会报内存溢出: java.lang.OutOfMemoryError: GC overhead limit exceeded at javax.crypto.JarVerifier.verifySingleJar(JarVerifier.java:426) at javax.crypto.JarVerifier.verifyJars(JarVerifier.java:322) at

微信小程序用户身份-微信小程序前端开发工具

一个团队进行小程序的开发,那么团队成员的身份管理是很有必要的. 管理员可在小程序管理后台统一管理项目成员(包括开发者.体验者及其他成员).设置项目成员的权限,包括:开发者/体验者权限.登录小程序管理后台.开发管理.查看小程序数据分析等. 管理入口位于:小程序管理后台 - 用户身份 – 成员管理 权限 说明 开发者权限 可使用小程序开发者工具及开发版小程序进行开发 体验者权限 可使用体验版小程序 登录 可登录小程序管理后台,无需管理员确认 数据分析 使用小程序数据分析功能查看小程序数据 开发管理

微信小程序背景音乐官方实例代码无效问题解决及音乐src获取方法

最近在学习微信小程序时遇到了个问题:官方的背景音乐的api实例代码中的音乐src不管用(可能有期限,后面的方法获取的src同样可能有期限),因此本人只能自己去寻找办法获取src,现将方法记录在下面.(官方实例代码如下) 1 const backgroundAudioManager = wx.getBackgroundAudioManager() 2 backgroundAudioManager.title = '此时此刻' 3 backgroundAudioManager.epname = '此

微信小程序request请求实例,网络请求。

最近微信小程序开始开放测试了,小程序提供了很多api,极大的方便了开发者,其中网络请求api是wx.request(object),这是小程序与开发者的服务器实现数据交互的一个很重要的api. 官方参数说明如下 OBJECT参数说明: 参数名 类型 必填 说明 url String 是 开发者服务器接口地址 data Object.String 否 请求的参数 header Object 否 设置请求的 header , header 中不能设置 Referer method String 否

第五章 “我要点爆”微信小程序云开发实例之从云端获取数据制作首页

下面我们来实现从云端获取数据,完成首页世界页面index的制作,首页分为4个数据列表导航页面,页面具体内容如下: 推荐:为用户推荐最新的点爆信息,它包含文本点爆内容和语音点爆内容. 文爆:筛选出文字点爆内容,只显示文字点爆内容. 音爆:筛选出语音点爆内容,只显示语音点爆内容. 爆榜:将点爆内容取出前20名进入排行. [实现页面内数据列表的滚动和导航切换后,每个导航下数据列表都在顶部] 由于我们使用的头部导航栏是通过数据绑定在同一页面进行切换,所以当一个页面内数据列表向下滚动后,切换导航后页面的s

微信小程序用户拒绝授权的官方推荐处理方法

小程序开发中,现在一般都需要获取微信用户信息,如头像/名字等.这样在用户第一次进入小程序时,微信端会弹出一个是否同意授权的消息提示框.但是如果用户第一时间点击了拒绝,或者用户手误点击了拒绝,如果没有了后续的操作,可能你的小程序就不能使用了,也就会失去这样一位用户.所以,微信官方推荐了一个方法,就是在用户第一次拒绝授权的时候,再给用户一个选择的机会.这样能很好的解决上诉问题.下面以用户需要授权两个权限为例,方法如下: 在 APP.JS 先设置两个全局变量 .用作记录用户是否授权 //判断地理位置是

微信小程序----用户拒绝授权,重新调起授权

获取用户信息 wx.getUserInfo({ withCredentials: true, success: function (res) { var nickName = res.userInfo.nickName; var avatarUrl = res.userInfo.avatarUrl; var gender = res.userInfo.gender; wx.login({ success: function (res) { if (res.code) { var rsaData

微信小程序~用户转发 onShareAppMessage

只有定义了此事件处理函数,右上角菜单才会显示“转发”按钮,在用户点击转发按钮的时候会调用,此事件需要return一个Object,包含title和path两个字段,用于自定义转发内容 代码使用onShareAppMessage自定义转发字段 // page.js Page({ onShareAppMessage: function () { return { title: '自定义转发标题', path: '/page/user?id=123' } } }) . 原文地址:https://www