• 微信小程序--WXML模板(页面逻辑)-2


    一、WXML--条件逻辑

    1.在WXML中我们使用wx:if来进行判断是否需要渲染该代码段,其中的条件需要在两个花括号,即{{}}中绑定

    2.使用WXML中的wx:elif和wx:else

    wx:elif是当前边if不满足的时候进行判断,如果elif后边的条件满足就执行该代码,不执行下边的elif,不满足的话继续往下走elif一直到else前边都不满足执行else所在标签的代码

    1. <text wx:if="{{if1==1}}">if1存在text>
    2. <text wx:elif="{{if0==0}}">if0不存在text>
    3. <text wx:elif="{{if0==0}}">buxianshitext>
    4. <text wx:else>显示这个text>

    3.一次性如果想要渲染多个元素需要 用block进行封装

    1. wx:if="{{false}}">
    2. <view>hahahaview>
    3. <view>hahahaview>
    4. <view>hahahaview>
    5. <view>hahahaview>
    6. <view>hahahaview>

    4.我们在学习vue的时候,介绍了vue-if和vue-show以及他们之间的区别,那么我4在微信小程序中是不是也有类似vue-show的属性呢(hidden)

    二、WXML--列表渲染 

    1.列表渲染小程序比较简单,利用wx:for进行渲染,wx:for="{{}}"其中括号中的·1变量需要是数组,然后调用的时候{{index}}是索引,{{item}}是数值,

    定义数据部分

    1. data: {
    2. ifs:1,
    3. list:[1.2,2.3,3.4,4.5],
    4. list2:[{name:"lifang"},{name:"lili"},{name:"xiaoi"}]
    5. },

    例子1

    1. wx:for="{{list}}">
    2. {{index}}--{{item}}

     

    例子2

    1. wx:for="{{list2}}">
    2. {{index}}--{{item.name}}

    2.我们渲染完成后还需要对其绑定key值,不然会弹出警告,绑定key值可以提高页面性能 

    绑定key值两种方法:

    (1)通过*this绑定key值:注意:用这种方法绑定key值的时候,*this就是循环中的item本身,需要item是唯一的(字符串或数字)

    1. wx:for="{{list2}}" wx:key="*this">
    2. {{index}}--{{item.name}}

    (2)字符串,我们可以在定义数据的时候在数组中每个item中定义一个属性,然后把这个属性绑定给key,定义时不要让他们重复。如下代码

    1. data: {
    2. ifs:1,
    3. list:[1.2,2.3,3.4,4.5],
    4. list2:[{name:"lifang",id:1},{name:"lili",id:2},{name:"xiaoi",id:3}]
    5. },
    1. wx:for="{{list2}}" wx:key="id">
    2. {{index}}--{{item.name}}

    3.当我们在多重嵌套wx:for的时候item和index使用的时候会冲突,微信小程序提供了一个更改index和item的方式,通过wx:for-index和wx:for-item进行修改,例如下边代码进行更改item和index的方式

    1. wx:for="{{list2}}" wx:key="id" wx:for-index="sort" wx:for-item="val">
    2. {{sort}}--{{val.name}}

  • 相关阅读:
    [教你做小游戏] 展示斗地主扑克牌,支持按出牌规则排序!支持按大小排序!
    如何动态改变本地的ip
    如何在本地使用Docker搭建和运行Kubernetes集群
    vue的生命周期
    准备用HashMap存1W条数据,构造时传10000还会触发扩容吗?存1000呢?
    Android Camera App启动流程解析
    golang笔记18--go并发多线程
    海量短视频打标问题之多模态机器学习
    CompletableFuture异步编程Api使用详解
    平均负载案例分析
  • 原文地址:https://blog.csdn.net/m0_72694993/article/details/126939523