首先,需要区分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 = "集邮"; //可以直接增加键值 } })