微信小程序 - 循环

前言

前端代码编写中,循环的使用是必不可少的,只要有相似内容的列表存在,大概率就会使用到循环,如:商品列表、每月收益、排行榜等。

数组/列表循环

使用wx的特殊语法来实现循环功能。

wx:for = "{{循环的列表(数组/对象)}}"

wx:for-item = "循环项的名称"

wx:for-index = "循环项的索引"

复制代码
.js 文件:
Page:{
    selectedGoods:[
        {name:'商品1',salePrice:100,originPrice:390,desc:'特价促销'},
        {name:'商品2',salePrice:130,originPrice:300,desc:'买一赠一'},
        {name:'商品3',salePrice:80,originPrice:200,desc:'甩货处理'},
    ]
}

.wxml 文件:
<block class="my_draw_canvas" 
    wx:for="{{selectedGoods}}"
    wx:for-item="item"
    wx:for-index="index">
    <view>{{index}}</view>
    <view>{{item.name}}</view>
    <view>{{item.salePrice}}</view>
    <view>{{item.originPrice}}</view>
    <view>{{item.desc}}</view>
</block>
    
结果:
    0
    商品1
    100
    390
    特价促销
    1
    商品2
    130
    300
    买一赠一
    2
    商品3
    80
    200
    甩货处理

注意⚠️:循环语句是固定的,要保证对象的唯一性,即wx:(循环) = "(循环值)",定了循环值,循环的就是循环值的内容。

当出现数组的嵌套循环的时候,要注意以下绑定的名称不要重名

wx:for-item="item"

wx:for-index="index"

对象循环

循环语句同数组/列表循环语句相同。

wx:for="{{数组或者对象}}"

wx:for-item="对象的值"

wx:for-index="对象的属性"

循环对象时可以根据对象的键值对对item、index赋值,如:可以把item和index的名称都修改为

wx:for-item="value"

wx:for-index="key

多层嵌套循环的情况下,在每一个view层级下再使用循环即可。注意:循环嵌套要更改item、index对应的值,另起一个单词。

复制代码
<view wx:if="{{profitSum}}" class="hava-profit">
    <view class="profit-content"
        wx:for="{{list}}"
        wx:for-item="value"
        wx:for-index="key">
      <view class="profit-title">({{key}}月)</view>
      <view class="profit-num">
        <text class="tip">合计</text>
        <text class="sum">{{(总计金额)}}</text>
      </view>
      <image class="icon" src="(网址/分割线)"></image>
      <view class="goods_content"
        wx:for="{{value}}"
        wx:for-item="goodsProfit"
        wx:for-index="goodsName">
        <text class="goods_name">{{goodsName}}</text>
        <text class="goods_progit">{{goodsProfit}}</text>
      </view>
    </view>
  </view>
相关推荐
黑马程序员毕设1 小时前
基于Java的仪器管理系统设计与实现
java·开发语言·spring boot·后端·微信小程序
河北清兮网络科技1 小时前
直播APP开发怎么选?流媒体高端定制架构解析,避开模板与外包技术坑
小程序·架构·app·短剧·短剧app·广告联盟
上单带刀不带妹4 小时前
小程序图片缓存问题:时间戳和版本号解决图片不更新
缓存·小程序·vue·uniapp
bug总结5 小时前
uniapp 微信小程序请求规范
微信小程序·小程序·uni-app
微三云 - 廖会灵 (私域系统开发)5 小时前
垂直行业 SaaS 实践|AI 美业小程序,构建美业服务全链路数字化闭环
人工智能·小程序
做萤石二次开发的哈哈6 小时前
海康班班通交互一体机技能接入实战:ISAPI透传+OTAP双协议封装,Web/App/小程序教学管理应用一站生成
前端·物联网·小程序·交互·萤石开放平台·蓝海aiot一站式工作台·aiot开发
云迈科技-软件定制开发6 小时前
长沙企业软件开发、App 开发全流程|需求、开发、上线、运维拆解
小程序·app开发
盟道科技7 小时前
电商小程序SKU数据模型设计:SPU、规格组合、库存与价格的工程实践
服务器·小程序·apache
mykj15518 小时前
社交找搭子app小程序找人组局更方便
小程序·app开发·小程序开发·找搭子app