一、跳转到下一页面传值
// 当前a页面, 要跳转b页面, 传值
uni.navigateTo({
url: '/pages/test/a?obj='+ JSON.stringify(obj)
})
// b页面接收值
onLoad(e){
this.obj = JSON.parse(e.obj)
},
二、页面栈的实例( 下面例子:当前页面向上一个页面传值 )
uniapp文档链接:getCurrentPages()
getCurrentPages() 函数用于获取当前页面栈的实例,以数组形式按栈的顺序给出,第一个元素为首页,最后一个元素为当前页面。
方法 | 描述 | 平台说明 |
---|---|---|
page.$getAppWebview() | 获取当前页面的webview对象实例 | App |
page.$vm | 当前页面的 Vue 实例 | |
page.route | 获取当前页面的路由 |
// 获取当前页面栈的实例
let currentPage = getCurrentPages();
// 获取上一个页面
let parent = currentPage[currentPage.length - 2];
// 当前页面,直接修改上一个页面的数据
parent.$vm.name = this.name
// 返回上一页(返回后,上一页的name直接有值)
uni.navigateBace()
三、组件传值
// 传值
uni.$emit('a', a)
// 接收值
uni.$on('a', (e) => {
console.log(e)
})