微信小程序 模板语法
2021/9/23 1:11:15
本文主要是介绍微信小程序 模板语法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
模板语法
WXML是框架设计的一套标签语言,结合基础组件、事件系统,可以构建出页面的结构
WXML和HTML的不同:
- WXML中的text相当于HTML中的span
- WXML中的view相当于HTML中的div
- WXML中的checkbox相当于HTML中的复选框
数据绑定
Page({ data:{ msg:"hello mina", num:10000, isGirl:false, person:{ name:"王", age:50 }, isChecked:false } })
<!--字符串--> <view>{{msg}}</view> <!--数字--> <view>{{num}}</view> <!--bool类型--> <view>是否是伪娘{{isGirl}}</view> <!--object--> <view>{{person.age}}</view> <!--在标签的属性中使用--> <view data-num="{{num}}">自定义属性</view> <!--使用boll类型当属性 checked 字符串和花括号之间不要存在空格,否则会导致识别失败 --> <checkbox checked="{{isChecked}}"></checkbox>
运算
<!--加减--> <view>{{1+1}}</view> <view>{{'1'+'1'}}</view> <!-- 三元表达式--> <view>{{10%2===0?"偶数":"奇数"}}</view>
列表渲染
-
wx:for="{{数组或者对象}}" wx:for-item=“循环项的名称” wx:for-index=“循环项的索引”
-
wx:key=“唯一的值” 用来提高列表渲染的性能
- wx:key 绑定一个普通的字符串的时候,那么这个字符串名称肯定是循环数组中的对象的唯一属性
wx:key="*this"
就表示你的数组是一个普通的数组," *this"表示是循环项
-
当出现数组的嵌套循环的时候,尤其要注意,不要重名
-
默认情况下,我们不写
wx:for-item="item" wx:for-index="index"
,小程序也会把 循环项的名称 和 索引的名称 item和index只有一层循环的话
wx:for-item="item" wx:for-index="index"
才可以省略‘ -
对象的循环,wx:for-item指向的是对象的值,wx:for-index指向的是对象的属性
项的变量名默认为item
, wx:for-item
可以指定数组当前元素的变量名
下标变量名默认为index
,wx:for-index
可以指定数组当前下标的变量名
<view> <view wx:for="{{list}}" wx:for-item="item" wx:for-index="index"> 索引:{{index}} -- 值:{{item.name}} </view> </view>
wx:key
用来提高数据渲染的性能
wx:key
绑定的值,有如下的选择
-
string
类型,表示循环项的唯一属性list:[{id: 0, name: "炒饭"}, {id: 1, name: "炒面"}] wx.key="id";
<view> <view wx:for="{{list}}" wx:key="index" wx:for-item="item" > {{index}}---{{item.name}} </view> </view>
-
保留字
*this
,它的意思是item
本身,*this代表的必须是唯一的字符串和数组list:[1, 2, 3, 4, 5] wx:key="*this"
block标签
block在写代码的时候可以看见,但是运行代码的时候不会变成一个真正的dom元素——运行时,block标签消失,但是其他标签不受任何影响
用处:用来绑定循环
<block wx:for="{{list}}"> <view> {{index}}---{{item.name}} </view> </block>
条件渲染
wx:if
在框架中,使用wx:if"{{condition}}"
来判断是否需要渲染该代码块
<view wx:if="{{false}}">1</view> <view wx:elif="{{true}}">2</view> <view wx:else>3</view>
- if成立执行,elif和else都不执行
- if不成立,elif成立执行,else不执行
- zhijieif和elif不成立,else执行
hidden
- 在标签上直接加入属性 hidden——标签直接隐藏
- hidden="{{条件表达式}}"
<view hidden>11111</view> <view hidden="{{true}}">22222</view>
区别及使用场合
-
当标签不是频繁地切换显示,优先使用wx-if
直接把标签从页面结构给移除掉
-
当标签频繁地切换显示的时候,优先使用hidden
通过添加样式的方式切换显示
这篇关于微信小程序 模板语法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-13微信小程序如何封装接口域名?-icode9专业技术文章分享
- 2024-11-13如何在微信小程序中实现直传功能?-icode9专业技术文章分享
- 2024-11-13如何在小程序的地图组件中添加标记和文字?-icode9专业技术文章分享
- 2024-11-13在微信小程序的地图组件中如何实现自定义标记和气泡?-icode9专业技术文章分享
- 2024-11-01微信小程序教程:零基础入门到实战
- 2024-11-01微信小程序全栈教程:从入门到实践
- 2024-10-31微信小程序怎么实现关注公众号功能-icode9专业技术文章分享
- 2024-10-30微信小程序cover-view,支持bindtap吗-icode9专业技术文章分享
- 2024-10-30微信小程序的cover-image支持bindtap吗-icode9专业技术文章分享
- 2024-10-30微信小程序web-view怎么设置高度?-icode9专业技术文章分享