数据事件
小程序的数据与事件和Web H5 开发中不一样,小程序没有 DOM 和 BOM ,因此我们不能通过 getElementByID 获取元素或者 addEventListener 来监听事件。小程序有自己的数据处理逻辑,相对于之前的 jQuery 操作DOM,小程序更趋向于类似 Vue 和 React 的数据驱动试图。
数据绑定
WXML 中的动态数据均来自对应 Page 的 data。
<view> {{ message }} </view>
Page({
data: {
message: 'Hello MINA!'
}
})
列表渲染
在组件上使用 wx:for 控制属性绑定一个数组,即可使用数组中各项的数据重复渲染该组件。
默认数组的当前项的下标变量名默认为 index,数组当前项的变量名默认为 item
<view wx:for="{{array}}">
{{index}}: {{item.message}}
</view>
Page({
data: {
array: [{
message: 'foo',
}, {
message: 'bar'
}]
}
})
条件渲染
在框架中,使用 wx:if="" 来判断是否需要渲染该代码块:
<view wx:if="{{condition}}"> True </view>
事件绑定
如bindtap,当用户点击该组件的时候会在该页面对应的Page中找到相应的事件处理函数。
<view id="tapTest" data-hi="WeChat" bindtap="tapName"> Click me! </view>
Page({
data: {},
tapName: function(event){
console.log(event)
}
})
参考
- 更多数据绑请参考文档