微信小程序五星级评分效果

<view>
    <view class="zan-font-16 my-ib" bindtap="myStarChoose">
        <block wx:for="{{starMap}}">
            <text wx:if="{{star>=index+1}}" style="padding-right: .5em" class="zan-c-red" data-star="{{index+1}}">★</text>
            <text wx:if="{{star<index+1}}" style="padding-right: .5em" class="zan-c-gray-dark" data-star="{{index+1}}">☆</text>
        </block>
    </view>
    <!--★-->
    <text class="zan-c-gray-dark">{{starMap[star-1]}}</text>
</view>

这里的zan-font-16,zan-c-red,zan-c-gray-darkZanUI-WeApp的样式。
这里的my-ib只是将设置displayinline-block

Page({
    data: {
        star: 0,
        starMap: [
            '非常差',
            '差',
            '一般',
            '好',
            '非常好',
        ],
    },
    myStarChoose(e) {
        let star = parseInt(e.target.dataset.star) || 0;
        this.setData({
            star: star,
        });
    }
});

效果如图:

clipboard.png


王道中强流
不为繁华易匠心

在福州“土生土长”的 1986 年老程序员一枚,专注 Web 技术三十年。

1.7k 声望
44 粉丝
0 条评论
推荐阅读
Linux自动备份MySQL
首先找到你的MySQL配置文件my.cnf {代码...} 然后修改它, {代码...} 在[client]里增加三行: {代码...} 本来不需要这些操作,直接把用户名密码写到备份脚本里就可以,但是 MySQL 5.6 之后在命令行里写密码会出现...

王道中强流阅读 2k

微信小程序开发过程中需要首先了解一些基础知识
微信小程序支持引用npm管理的第三方包,但引用的方式与传统的node.js项目并不一致。具体还得随时开发随时学习垃圾的官方文档,之所以说需要随时学习,是因为这个文档变化的比较快。

myskies3阅读 824

【uni-app&微信小程序&React Native】跨端原理初探
文章内容以官方文档为基础,对uni-app的基础框架(逻辑层、渲染层)、组件、API进行简单地分析以官方文档为基础,对微信小程序框架(逻辑层、视图层)、运行时进行简单地分析以官方文档为基础,对React Native旧...

白边3阅读 1.2k

小程序内参数和扫码参数统一
写小程序的时候都会遇到扫码参数和小程序内跳转参数要分开处理的问题,但实际上参数和处理的方式都是一样的,这里封装一种方法,将扫码参数直接放到options下面,这样就不需要分开独立处理,减少冗余代码增加代码...

海洋饼干1阅读 835

5 分钟带你小程序入门 [实战总结分享]
微信小程序常常用 4 种文件类型JS 文件JS 在小程序中用于编写页面逻辑和交互效果,可调用 API 接口完成数据请求和处理,也可以使用第三方库和框架。模块化编程:小程序中JS文件可以使用ES6的模块化语法,通过expo...

程序员海军2阅读 468

封面图
微信小程序如何在事件中传参
在微信小程序中如果使用了wx:for进行渲染时,由于同时生成了很多一样的dom。这时候如果想知道当前处理的是哪个对象,则需要在事件中进行传参,方法如下:

myskies阅读 1k

微信小程序中的值传递
在使用微信小程序的过程中,发现页面向组件中传值或是父子组件中传值并不值传递,本文通过代码实验旨在弄明白值在传递过程中发生的变化。首先建立一个如下的数据测试类: {代码...} 然后在C层中使用如下测试语句...

myskies阅读 695

在福州“土生土长”的 1986 年老程序员一枚,专注 Web 技术三十年。

1.7k 声望
44 粉丝
宣传栏