首先,需要區分globalData和data,data是定義在頁面中的初始化數據,globalData是定義在app.js中的全局數據,類似於頁面中的data
1. data
data是頁面第一次渲染使用的初始數據,頁面加載時,data
將會以JSON
字符串的形式由邏輯層傳至渲染層,因此data
中的數據必須是可以轉成JSON
的類型:字符串,數字,布爾值,對象,數組。
2. globalData
app.js中定義、獲取、修改globalData:
//app.js App({ globalData: { name: '張三', age: 18 }, onLoad: function(){ console.log(this.globalData.name); this.globalData.name = '李四'; } })
在其他page.js頁面讀取以及修改globalData:
//index.js var app = getApp(); //首先需要在應用的頁面js文件中,引用app()實例 Page({ onLoad: function() { console.log(app.globalData.name); //獲取 getApp().globalData.name = "王二麻子"; //修改 getApp().globalData.favorite = "集郵"; //可以直接增加鍵值 } })