uniapp 跨页面传值及跨页面方法调用

uniapp 跨页面传值及跨页面方法调用

1、跨页面传值

使用全局方法监听uni.$emituni.$onuni.$off 发布、监听、移除

js 复制代码
methods: {
	addFun(){
		let data = [1]
		uni.navigateBack({ // 返回上一页
          delta: 1
        })
		uni.$emit('successFun',{data}) // 传值
	}
}

监听页

js 复制代码
onLoad() {
    uni.$on('successFun', (e => {
        // ...do something
    }))
},
onUnload() {
    // 移除监听
    uni.$off('successFun');
},
2、跨页面方法调用

场景:当前页面数据提交后需要更新上一页的表单,调用当前页的上一页的某个方法

js 复制代码
methods: {
	addFun(){
		let pages = getCurrentPages() // 获取当前页面栈的实例,以数组形式按栈的顺序给出,第一个元素为首页,最后一个元素为当前页面。
        let prevPage = pages[pages.length - 2] //上一页页面实例
		let data = [1]
		uni.navigateBack({ // 返回上一页
          delta: 1,
          success: () => {
        	prevPage.$vm.fartherFun(data) // 调用上一页的方法,传参
		  }
        })
	}
}
相关推荐
nujnewnehc5 小时前
ps, ai, ae插件都可以用html和js开发了
前端·javascript
Jagger_8 小时前
整洁架构三连问:是什么,怎么做,为什么要用
前端
一个处女座的程序猿O(∩_∩)O8 小时前
React 完全入门指南:从基础概念到组件协作
前端·react.js·前端框架
前端摸鱼匠8 小时前
Vue 3 的defineEmits编译器宏:详解<script setup>中defineEmits的使用
前端·javascript·vue.js·前端框架·ecmascript
里欧跑得慢9 小时前
Flutter 测试全攻略:从单元测试到集成测试的完整实践
前端·css·flutter·web
Jagger_9 小时前
前端整洁架构详解
前端
徐小夕9 小时前
我花一天时间Vibe Coding的开源AI工具,一键检测你的电脑能跑哪些AI大模型
前端·javascript·github
英俊潇洒美少年9 小时前
Vue3 企业级封装:useEventListener + 终极版 BaseEcharts 组件
前端·javascript·vue.js
嵌入式×边缘AI:打怪升级日志9 小时前
使用JsonRPC实现前后台
前端·后端
小码哥_常10 小时前
深度剖析:为什么Android选择了Binder
前端