跨页面通信是指在微信小程序中,在不同页面之间传递数据或触发事件的机制。小程序提供了多种方式实现跨页面通信,包括使用全局变量、使用页面栈、使用StorageAPI、使用事件总线等。下面将详细介绍这些方式,并提供相关的代码案例。
一、全局变量 在微信小程序中,可以通过定义全局变量来实现不同页面之间的数据传递。全局变量的定义和使用都比较简单,但需要注意的是全局变量不会在页面切换后重置,需要手动进行数据清理。以下是一个使用全局变量的示例:
- 在app.js中定义全局变量:
App({
globalData: {
userInfo: null
},
onLaunch: function () {
// ...
}
})
- 在页面A中设置全局变量的值:
// 获取全局变量
const appInstance = getApp()
// 设置全局变量的值
appInstance.globalData.userInfo = { name: '小白', age: 18 }
- 在页面B中获取全局变量的值:
// 获取全局变量
con