bind
事件绑定不会阻止冒泡事件向上冒泡,catch
事件绑定可以阻止冒泡事件向上冒泡。
如在下边这个例子中,点击 inner view 会先后调用handleTap3
和handleTap2
(因为tap事件会冒泡到 middle view,而 middle view 阻止了 tap 事件冒泡,不再向父节点传递),点击 middle view 会触发handleTap2
,点击 outer view 会触发handleTap1
。
<view id="outer" bindtap="handleTap1">
outer view
<view id="middle" catchtap="handleTap2">
middle view
<view id="inner" bindtap="handleTap3">
inner view
</view>
</view>
</view>
常用事件 : tap touchstart touchmove touchend
longtap(长按 会触发tap)
longpress(长按 不会触发tap)
animationstart animationend
全局数据设置和获取:
可以在app.js里面设置 globalData,在别的页面中调用(比如index.js)
globalData: (
userInfo: null,
userid:99
}
页面顶部:const app = getApp()
页面加载时:
app.globalData.userid = 998888 //设置值
console.log(app.globalData.userid) // 调用值
appid 的获取方式:
const accountInfo = wx.getAccountInfoSync();
console.log(accountInfo.miniProgram.appId) // 小程序 appId
获取昵称:头像:
<open-data type="userAvatarUrl"></open-data> //获取用户头像直接显示在小程序中
<open-data type="userNickName" lang="zh_CN"></open-data> //获取用户昵称直接显示在小程序中