你1.app.js
寫全局js的地方胎挎,可以當(dāng)成倉(cāng)庫(kù)來(lái)用使用方法在app.js中定義一個(gè)對(duì)象比如:
當(dāng)你需要在其他頁(yè)面使用時(shí)只需在需要使用的子頁(yè)面中使用
const app = getApp();
通過(guò)app.globalData.key
key代表你在全局globalData中定義的變量
如果需要修改全局里定義的變量沟启,不能直接在app.js通過(guò)生命周期去直接改globalData里的值,可以在操作全局值的js文件中的data里聲明一個(gè)值犹菇,讓他等于全局里你聲明的值也就是app.globalData.key德迹,之后你可以在你操作全局的js中變量的js文件中使用:
this.setData({
??'你在data中定義的值(也就是你使用全局變量定義的值)': value
})
其中value為你想要修改的值
!=疑帧胳搞!但是這樣是并不能修改全局里的值的,你修改的只是你操作全局變量js中從全局的app.js中拿過(guò)來(lái)你定義的值称杨,要想修改全局的值必須使用
app.glovalData.key = value;
?因?yàn)槲覀兪褂?this.setData賦值時(shí)肌毅,this的執(zhí)行上下文是page本身,其setData也只能修改當(dāng)前操作全局變量js中的js中data里面的值姑原,這也就是我們?yōu)槭裁床荒茉陧?yè)面中使用 this.setData修改全局變量的值的原因了悬而。
this.setData({
'你在data中定義的值(也就是你使用全局變量定義的值)': value
})
在下面加一條app.glovalData.key = value;就可以了