微信小程序 if语法、for循环 条件渲染、列表渲染等讲解

这篇文章我想给大家学习的就是如何使用 if 去判断 组件的是显示和隐藏如何使用for循环来渲染列表等重复的内容。

1.if语法的使用

在小程序中,我们可以使用wx:if="{ {条件}}"来判断是否需要渲染该代码块

也可以用 wx:elif wx:else 来添加 else 判断 :

 以上是2种方法介绍,我们先来测试一下第一种

 通过图片我们发现隐藏的代码被隐藏了,没有渲染出来,这时候我们就可以知道 wx:if 可以控制组件隐藏显示

接下增加条件进行判断

我们现在pages里的data中添加一个sex值为2

我们发现当sex等于2时,代码会之渲染对的组件,所以我们可以通过if来多重判断需要渲染的组件

在这里附加一个内容就是

wx:if 与 hidden 对比

①运行方式不同

        wx:if 以动态创建和移除元素的方式,控制元素的展示与隐藏

        hidden 以切换样式的方式(disolay:none/block),控制元素的显示与隐藏

②使用建议

        频繁切换时,建议使用hidden

        控制条件复杂时,建议使用wx:if搭配wx:elif、wx:else进行展示与隐藏的切换

2.for语法使用

我们都知道for语法在编程语言中是用来循环的,在小程序中也一样,只不过他的用法和if类似,需要在前面加入wx:来使用

通过 wx:for 可以根据指定的数组,循环渲染重复的组件结构,语法如下:

<view wx:for="{
   
   {array}}">
  索引是:{
   
   {index}} 当前项是:{
   
   {item}}
</view>

 默认情况下,当循环项的索引用index表示当前循环项用item表示

我们先尝试给data一个数组

page({
  data: {
    list:['华为','苹果','三星']
  }
})
<view wx:for="{
   
   {list}}">
  索引是:{
   
   {index}} 当前项是:{
   
   {item}}
</view>

这样就能渲染出图中一样的效果,这样就省了我们很多功夫去做同样的事情。

到这里有人就会问,循环变量可以改把?当然可以,我们有这么一种方法

手动指定索引和当前项的变量名(重点*)

        使用 wx:for-index 可以指定当前循环项的索引的变量名

        使用 wx:for-item 可以指定当前项的变量名

示例代码如下:

<view wx:for="{
   
   {list}}" wx:for-index="idx" wx:for-item="value">
  索引是:{
   
   {idx}} 当前项是:{
   
   {value}}
</view>

       从图中我们就可以看出通过wx:for-index和wx:for-item 就修改了他们的变量名称,但是细心的同学会发现我们的终端会提示一个这样的内容

 这个就是,在在我们for循环中其实有一个 wx:key的属性

翻译那句话就是  现在,您可以为“wx:for”提供属性“wx:key”以提高性能。

所以我们可以在后面加入一个wx:key

<view wx:for="{
   
   {list}}" wx:for-index="idx" wx:for-item="value" wx:key="idx">
  索引是:{
   
   {idx}} 当前项是:{
   
   {value}}
</view>

即可消除这个提示。

猜你喜欢

转载自blog.csdn.net/weixin_50123771/article/details/129019121