1 通过data-*属性传值
console.log(e.currentTarget.dataset)
实例:data- 是固定的写法,-后面的名字可以随便起字母或英文,但获取的时候要写对应名称。
vxml:
<view bindtap="triggers" data-name="张三">点击按钮</view>
js:
Page({
data:{},
triggers(e){
console.log(e.target.dataset.name)
}
})
2 通过id传递
console.log(e.currentTarget.id)
wxml:
//传id
<button bindtap="getIdFun" id="202208"></button>
//传对象
<button bindtap="getIdFun" id='{"name":"zhangsan"}'></button>
js:
Page({
getIdFun(e){
//获取绑定事件的id
console.log(e.currentTarget.id)//获取id
let id = e.currentTarget.id;
let jsonId = JSON.parse(id)//解析对象
console.log(jsonId)
}
})
3 通过globalData传递参数
const app = getApp();
app.globalData.user = '你好'//设置参数
3-1 app.js //定义全局变量放置数据
globalData:{
name:'zs',
age:20
}
3-2 login.js 事件
Page({
data:{},
getEventFun(e){
const app = getApp();
console.log(app)
//打印结果为:
//globalData:{ name:'zs', age:20 }
}
})
4 通过页面传值options获取
a.vue:
wx.navigateTo({
url:'/pages/a/index?type=100'
}) 或者
wx.redirectTo({
url:'/pages/a/index?type=100'
})
b.vue:
onLoad(options){
console.log(options.type) // 100
}
5 通过storage传递参数
wx.setStorageSync('localVal':'我是本地的');//设置
wx.getStorage({
key:'localVal',
success(res){
console.log(res) //{errMsg:'getStorage:ok',data:'我是本地的'}
}
})