关于微信小程序数据绑定的总结
其他的具体看官方文档,就不做详述,我们主要放在一些容易产生歧义的地方。
1.data里面有true参数,那么数据绑定是以哪个为准呢?
index.js
Page({
data: {
message:"Hello world",
true:3
}
})
index.wxml
<view class="container">
<view>{{message}} {{true}}</view>
</view>
结果显示:Hello world true;
分析:数据绑定中模板解析首先会判断变量是否属于布尔值要早于数据解析。
2.如果一个参数没有在数据中定义
index.js
Page({
data: {
message:"Hello world"
}
})
index.wxml
<view class="container">
<view>{{message}} {{name}}</view>
</view>
结果显示:Hello world;
分析:如果一个变量没有定义,则页面不会解析。
3.wx:for中没有数据绑定呢
<view wx:for="[1,2]">{{item}}</view>
结果显示:
[
1
,
2
]
分析:如果没有数据绑定,则不会发生解析行为,wxml在wx:for中就会把数组等当做字符串。
总结:
(1)数据绑定在遇到双括号时候都会发生解析,不管在什么位置;
(2)括号里面的字符串不会与data数据对比并解析,变量会解析,如果没有定义,则为空,不会为undefined;
(3)数据绑定中模板解析首先会判断变量是否属于布尔值或者数值,如果是则不会解析;
本文深入探讨微信小程序数据绑定机制,解析数据绑定中布尔值、未定义参数及wx:for循环的处理方式,揭示模板解析与数据对比的先后顺序。
927

被折叠的 条评论
为什么被折叠?



