第一種:通過鏈接傳值(跳轉頁面傳值)
index.wxml
<view>{{ msg }}</view>
<button bindtap="clickMe">點擊我</button>
clickMe: function () {//點擊事件
wx.navigateTo({
url: '../1111?id=1'//傳值
})
this.setData({ msg: "Hello World" })
},
跳傳頁面接受值
onLoad: function (options) {
console.log('query',options)
},
第二種方式 data-* || id(適合在本頁面傳值)
<button bindtap="clickMe" data-id='{{key}}'>點擊我</button>//當然key在data中必須有值
<button bindtap="clickMe" id='{{key}}'>點擊我</button>
var id = e.currentTarget.id;
var id = e.currentTarget.dataset.id;
console.log(id)
通過使用data - xxxx 的方法標識來傳值
通過使用data - xxxx 的方法標識來傳值,xxxx可以自定義取名 比my.wxml中的data-index。
如何獲取data-xxxx傳遞的值?
在js的bindtap的響應事件中:
通過數據解析一層層找到數據,var id=e.target.dataset.index(根據你的data-id的取名)
如js中的兩個打印就是通過兩種不同方式獲得的id。
第三種方式本地存儲(和第四種一樣都是可以全局使用的)
wx.setStorage({
key:"key", data:"value" })
wx.setStorage({
key: "key",
data: "很多的數據"
})
第4中方式全局app對象
const app = getApp()
app.datakey='sks';
const app = getApp()
var sks = app.datakey;
console.log(sks)
最后添加一種方式是跳轉路由,由於本人記性差所以mark
1 goabout :function(){ 2 this.$router.push({ 3 path:'/home/first' 4 }) 5 6 }
