微信小程序|逻辑判断

时间:2022-07-23
本文章向大家介绍微信小程序|逻辑判断,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

在开发微信小程序的时候,有时我们需要根据条件来决定一些内容是否渲染(显示或隐藏)

例如当条件为true时,view组件会渲染出来,为false时,不会渲染出来。

1.wx:if的使用

第一种直接传入:

<view wx:if="{{true}}">哈哈哈</view>//view组件会渲染出来<view wx:if="{{false}}">哈哈哈</view> //view组件不会渲染出来

第二种变量控制:

定义一个变量为isShow,在js的页面的初始数据data里面变换true或false

.wxml

<view wx:if="{{isShow}}">哈哈哈</view>

.js

data: {    isShow:true,//当这个变量为true,渲染出来//false,不会渲染出来},

第三种切换控制:通过组件,切换是否显示内容

例如给button组件一个点击属性,在js里面通过setData改变isShow这个变量,isShow: !this.data.isShow,即对原来的值取反

.wxml

<button bindtap="handleSwitchShow">切换显示</button><view wx:if="{{isShow}}">哈哈哈</view>

.js

/**   * 生命周期函数--监听页面加载   */  onLoad: function (options) {      },  handleSwitchShow() {    this.setData({      isShow: !this.data.isShow    })  },

2.wx:else/wx:elif的使用

用于多个条件的判断,定义一个score变量,给它一个数值,data: {score:90 }

通过wx:elif/wx:else判断

.wxml

<view wx:if="{{score >=90}}">优秀</view><view wx:elif="{{score >=80}}">良好</view><view wx:elif="{{score >=60}}">及格</view><view wx:else>不及格</view>

.js

/**   * 页面的初始数据   */  data: {   score:90,  },

3.wx:if与hidden区别

wx:if 与 hidden 都可以控制微信小程序中元素的显示与否。

区别:

wx:if 是遇 true 显示,遇 false 不显示。它将一个组件隐藏时,该组件没有渲染,即不存在没有创建。用于显示和隐藏切换频率低时。

hidden 是遇 false 显示,遇 true 不显示。它将一个组件隐藏时,该组件依然存在,渲染但不显示,仅仅是通过css的display:none属性控制。用于显示和隐藏切换频率高时。

END