目录
? ? ? ? 上一期我们讲解wxml模版语法中的数据绑定和事件绑定(上一期链接:微信小程序-----WXML模板语法之数据绑定与事件绑定-CSDN博客),那么本期我们继续wxml语法的学习,本期的主要内容是条件渲染和列表渲染,下面就开始本期的学习吧!
<view wx:if="{{condition}}">show me</view>
<!-- 条件渲染 -->
<view wx:if="{{type==1}}">男</view>
<view wx:elif="{{type==2}}">女</view>
<view wx:else>其他</view>
?然后我们在js文件中去定义变量参数type:
Page({
/**
* 页面的初始数据
*/
data: {
type:1
},
})
<block wx:if="{{condition}}">
<view>001</view>
<view>002</view>
<view>003</view>
</block>
这里我们点开控制台,可以看到这三个view组件外面没有block组件包装,所以可以看出block组件是不作显示的。
注意: <block> 并不是一个组件 ,它只是一个包裹性质的容器, 不会在页面中做任何渲染。
在小程序中,直接使用 hidden="{{ condition }}" 也能控制元素的显示与隐藏:
<view hidden="{{condition}}">condition为true的时候隐藏,false的时候显示</view>
① 运行方式不同
- ?wx:if 以动态创建和移除元素的方式,控制元素的展示与隐藏
- ?hidden 以切换样式的方式(display: none/block;),控制元素的显示与隐藏
② 使用建议
- ?频繁切换时,建议使用 hidden
- ?控制条件复杂时,建议使用 wx:if 搭配 wx:elif、wx:else 进行展示与隐藏的切换
<view wx:for="{{arr}}">
索引:{{index}}, 值:{{item}}
</view>
默认情况下,当前循环项的索引用 index 表示;当前循环项用 item 表示。?
js文件下arr数组定义:?
Page({
/**
* 页面的初始数据
*/
data: {
arr:['ikun','坤坤','只因']
},
})
<view wx:for="{{arr}}" wx:for-index="idx" wx:for-item="id">
索引:{{ide}}, 值:{{id}}
</view>
这里我把index改成了ide,item改成了id,那么下面用的话就只能用ide代替index、id代替item
<view wx:for="{{list}}" wx:key="num">
{{item.id}}
</view>
Page({
/**
* 页面的初始数据
*/
data: {
list:[
{num:1,id:'kun'},
{num:2,id:'js'},
{num:3,id:'cxk'}
]
},
})
显示效果:?
?
?这里我们可以看出根据num的次序就显示相对应id的内容。
?以上就是本期的全部内容了,我们下次见!
分享一张壁纸: