微信小程序js学习心得体会
页面控制的bindtap和catchtap
用法,区别
<button id='123' data-userDate='100' bindtap='tabMessage'>刷新</button>
tabMessage: function(e){
console.log(e.target.id);
console.log(e.target.dataset);
console.log(e.target.dataset.userdate);
},
- 可以获取的数据
- id
- 设置的datauserxxx,在页面上设置为data-userXxxx,在js中获取则为dataset.userxxxx 更换为小写
- bindtap 与 catchtap的是否冒泡的区别
- bindtap为冒泡事件,bindtap会导致上级控件的所有事件被触发,而catchtap不会
- catchtap可以中断冒泡事件
- 任何控件都可以添加该事件
- 因此通常会在最外层使用一个view作为总控件,添加一个bindtap执行如全局刷新等功能
setData
对于小程序中存在js中data的初始数据,假设如下
data: {
count: 1,
weeek: 1
},
view1: function(e){
this.setData({
count: 2
})
}
在这个js中,如果执行view1函数,则data数据只有count会改变,而week不会改变,不会受到影响。