富力丹麦小镇P20-602的春天

一、对象数组

很多情况下,我们需要多次显示同一个条目(item),或者说是某个类的不同实例对象。类似如下:

那么,你可以写很复杂的WXML,“手工”地为每个对象书写一块WXML,显示一个对象,向下面这个代码:

<view class="allbody-flex">

  <view class="title"> TOMMY游记 view>

  <view class="bodyone-flex">

    <view class="unit">

      <image class="img" mode="widthFix" src="../../image/natrue1.png">image>

      <view class="slogan">大好河山view>

      <view class="price">门票view>

    view>

    <view class="unit">

      <image class="img" mode="widthFix" src="../../image/natrue2.png">image>

        <view class="slogan">原始森林view>

      <view class="price">门票view>

    view>

    <view class="unit">

      <image class="img" mode="widthFix" src="../../image/natrue3.png"> image>

          <view class="slogan">无限原野view>

      <view class="price">门票view>

    view>

    <view class="unit">

      <image class="img" mode="widthFix" src="../../image/natrue4.png"> image>

          <view class="slogan">蓝天绿草view>

      <view class="price">门票view>

    view>

......

这显然不是编程手段,你可以把每个对象放入一个数组,然后利用组件的wx:for属性循环渲染这个数组的每一个元素,程序片段如下

在.JS文件中定义对象数组数据

page({

data:{

tempArray:[

{picPath :"../../image/natrue1.png",

text:"大好河山",

price:0},

{picPath :""../../image/natrue1.png"",

text:"原始森林",

price:20},

{picPath :"../../image/natrue3.png",

text:"无限原野",

price:30},

{picPath :"../../image/natrue4.png",

text:"蓝天绿草",

price:40}

]

},

})

上述tempArray 是在.js中定义得data对象的一个属性,这个属性是数组,这个数组的每个元素,又是一个对象,所以把tempArray称为对象数组。

那么,在.WXML中,可以利用wx:for属性实现循环渲染

<view class="unit">

<image class="img" mode="widthFix" src="{{item.picPath}}"image>

<view class="slogan">{{item.text}}view>

<view class="price">门票:{{item.price}}view>

view>

二、循环渲染注意事项

1:wx:for是小写的,是组件的一个属性;

2:wx:for后面跟着的是对象数组的数组名称,后续则用关键字item代替这个数组名称本身,关键字index代表数组下标;

3:上述代码,将循环渲染对象数组中的内容;

4:wx:for="{{arrayName}}",中的arrayName的名称是data中定义的,可以是任意数组,不一定是对象数组;

5:上述wx:for的意思就是自动完成数组遍历;

使用构造一个代码块,类似c或.js中的{语句块},表示在同一个逻辑控制下的一组语句,是个好思路!

三、更改wx:for的默认变量名

那么,如果不用默认的item和index做变量可以吗?可以!

可以将上述代码修改为:

<view class="unit">

<image class="img" mode="widthFix" src="{{body.picPath}}"image>

<view class="slogan">{{body.text}}view>

<view class="price">门票:{{body.price}}view>

view>

四、条件渲染

那么,用组件的wx:if="{{表达式}}"属性,可以实现条件渲染,也就是满足一定条件时显示某个组件(块)

组件块

这个语法中,理解的关键还是 组件的属性值用双引号括起来,页面表达式用{{}}胡子语法!

那么同理,还可以加wx:else,wx:elif="{{表达式}}",如:

组件块

组件块

上述注意,是elif,不是elseif!

自己上机测试吧,

小程序循环不同的组建_小程序之八,对象数组、循环及条件渲染相关推荐

  1. servlrt程序的入口点是_小程序深度报告:全网数量约550万,日活跃超4.4亿

    图片来源@视觉中国 当初2017年微信推出小程序这个"新物种"时,外界有各种质疑的声音,可是发展至今,小程序数量呈现逐渐攀升趋势,截止至2020年6月底已达到以往高峰,全网小程序数 ...

  2. 小程序input获得焦点触发_小程序如何获得种子用户,微信9亿月活用户来教你!...

    小程序虽已上线2年了,但在微信生态中还非常年轻,正处于学习奔跑的阶段.而且,许多商家对于如何正确获得第一批种子用户,并不十分清楚. 今天,企乐网就以如何定位种子用户?种子用户在哪里获得?用什么方法沉淀 ...

  3. 大型程序是如何开发的_小程序开发好之后如何引流

    现在做小程序的企业越来越多,不过也遇到了一个现实的问题,那就是找人开发了小程序之后,小程序里面没有流量,这里小编要和大家聊一下,小程序引流对于小程序营销来说是很重要的,就相当于开了个公司,没有业务员, ...

  4. 小程序 const moment = require('moment')_小程序依赖分析实践

    用过 webpack 的同学肯定知道 webpack-bundle-analyzer ,可以用来分析当前项目 js 文件的依赖关系. webpack-bundle-analyzer 因为最近一直在做小 ...

  5. 小程序 和 web 功能对比_小程序官方推出的Kbone,是如何解决Web 端和小程序同构痛点的?...

    小程序作为一种新兴地连接用户与服务的方式,相信大家都或多或少接触过.对于开发者来说,它是一种类似 Web 但又不同于 Web 的开发模式,它提供了一套自定义的 API 和文件组织方式,这无疑带给开发者 ...

  6. 小程序 和 web 功能对比_小程序的基本知识及功能

    "小沃"为客户开发项目中经常遇到客户要求开发小程序,"小沃"也是一个刨根问底的工作狂,从而收集了对"小程序生态变化"市场调研报告,一方面让客 ...

  7. nginx做小程序外链跳转_小程序跳转外部链接怎么设置,实现小程序跳转外链的两种方法...

    小程序跳转到外部链接有很多种类型,包括小程序跳转到APP,小程序跳转到小程序,小程序跳转到公众号,小程序跳转到网页等.由于小程序跳转的对象比较多,各自的规则又不一样,因此小程序跳转外部链接是用户咨询较 ...

  8. nginx做小程序外链跳转_小程序如何做外部链接跳转

    随着互联网的发展,小程序定制开发的需求也是越来越多了.客户在寻问小程序开发的时候,小程序跳转外部链接是他们比较关心的问题之一.下面我们将小程序跳转外部链接的规则汇总整理,希望用户对小程序的跳转规则有更 ...

  9. 小觅双目相机如何使用_小觅双目摄像头标准版(S版)常见问题

    SDK支持系统 已测试可用的平台有:Windows:目前只支持Windows 10 Linux:Ubuntu14.04, Ubuntu16.04,  Ubuntu18.04 支持TX1/TX2/RK3 ...

最新文章

  1. Evernote相关技术介绍——mysql+lucene+tomcat
  2. java.io.IOException cannot be resolved
  3. 四叶草社交平台——十天冲刺(4)
  4. 玩转Nacos参数配置!多图勿点
  5. 2016第三届科学数据大会——科学数据与创新发展
  6. [POJ1840 Eqs]
  7. 数据结构C++ 栈——栈的应用
  8. WPS显示无法创建对象,请确认对象已在系统注册表中注册
  9. java如何面试别人_Java面试如何考察候选人
  10. 技术指南 | 理解零知识证明算法之Zk-stark
  11. 笛卡尔空间力反馈的关节速度控制之机器人运动学库KDL安装及使用
  12. 一个B端硬件产品经理的成长史
  13. 丈母娘刚需支撑中国经济
  14. mysql获取汉字拼音首字母_MySQL数据库获取汉字拼音的首字母函数
  15. leetcode 字符串之单词
  16. 一年手机信息安全囧事大调查,你有没有中招
  17. 稳定可靠github加速神器 FastGithub
  18. 环境部署(物理手工部署):
  19. python出租车数据_Python处理JSON格式数据(出租车轨迹数据)
  20. 最近10年内出现的计算机术语,记常见的计算机术语(不停更新)

热门文章

  1. JFace中Dialog类的使用方法
  2. Ancient China Story of Shen-《Kung Fu Panda 2》
  3. wince 6.0 设备管理器架构(Device Manager Architecture)
  4. arcgis jsapi接口入门系列(7):鼠标在地图画线
  5. socketserver
  6. HTTP协议的六种请求方法
  7. 人工智能等新技术将加速物联网的普及
  8. Linux查看swap使用情况小脚本
  9. Java泛型详解,通俗易懂
  10. 集成 jpush-react-native 常见问题汇总 ( iOS 篇)