1. 視圖層
WXML(WeiXin Markup Language)是框架設計的一套標簽語言,結合基礎組件、事件系統,可以構建出頁面的結構。
1.1. 數據綁定
1.1.1. 普通寫法
<view> {{ message }} </view>
Page({
data: {
message: 'Hello MINA!'
}
})
1.1.2. 組件屬性
簡直和上面沒區別啊
<view id="item-{{id}}"> </view>
Page({
data: {
id: 0
}
})
1.1.3. bool類型
不要直接寫 checked="false",其計算結果是一個字符串
<checkbox checked="{{false}}"> </checkbox>
1.2. 運算
1.2.1. 三元運算
<view hidden="{{flag ? true : false}}"> Hidden </view>
1.2.2. 算數運算
<view> {{a + b}} + {{c}} + d </view>
Page({
data: {
a: 1,
b: 2,
c: 3
}
})
1.2.3. 邏輯判斷
<view wx:if="{{length > 5}}"> </view>
1.2.4. 字符串運算
<view>{{"hello" + name}}</view>
Page({
data:{
name: 'MINA'
}
})
1.2.5. 注意
花括號和引號之間如果有空格,將最終被解析成為字符串
1.3. 列表渲染
1.3.1. wx:for
項的變量名默認為 item
wx:for-item
可以指定數組當前元素的變量名
下標變量名默認為 index
wx:for-index
可以指定數組當前下標的變量名
<view wx:for="{{array}}">
{{index}}: {{item.message}}
</view>
Page({
data: {
array: [{
message: 'foo',
}, {
message: 'bar'
}]
}
})
1.3.2. wx:for
渲染一個包含多節點的結構塊 block最終不會變成真正的dom元素
<block wx:for="{{[1, 2, 3]}}">
<view> {{index}}: </view>
<view> {{item}} </view>
</block>
1.3.3. wx:key
提高效率使用的
1.4. 條件渲染
1.4.1. wx:if
在框架中,使用 wx:if="{{condition}}"
來判斷是否需要渲染該代碼塊:
<view wx:if="{{condition}}"> True </view>
1.4.2. hidden
<view hidden="{{condition}}"> True </view>
類似 wx:if
頻繁切換 用 hidden
不常使用 用 wx:if