uni-app中,实现页面之间传参

使用场景:

前提条件:当我们从一个列表页面,进入新增页面,

情况1:在新增页面,信息添加成功后,返回列表页面,此时,需要更新列表数据;

情况2:在新增页面,没有添加信息,直接返回列表页面,此时,不需要更新列表数据

针对以上情况,具体实现如下:

列表页面A,代码内容如下:
javascript 复制代码
import { onShow } from '@dcloudio/uni-app'

onShow(() => {
  // 当从添加页面返回时,如果有数据更新,则需要刷新列表
  uni.$on('update', (e: boolean) => {
    // 为true时,表示需要更新数据
    if (e) {
      page.value = 1
      total.value = 0
      getList()
    }
  })
})

添加页面B,代码内容如下:

javascript 复制代码
// 确认添加信息
const confirmSubmit = async () => {
  try {
    btnLoading.value = true
    // 执行对应接口
    await interfaceName(params)
    // 添加成功时,返回列表页面,需要重新刷新数据
    uni.$emit('update', true)
    // 添加成功之后,才返回列表页面
    uni.navigateBack()
  } catch (e) {
    console.log(e)
  } finally {
    btnLoading.value = false
  }
}

注意: 页面之间传参,通过uni.emit('update', params)与uni.on('update', (e: boolean) => {})实现

大家如有其他更好的方法,欢迎大家留言评论。如果有错误的地方,也请大家及时指出,非常感谢!

相关推荐
Dorcas_FE1 小时前
【tips】动态el-form-item中校验的注意点
前端·javascript·vue.js
小小前端要继续努力1 小时前
前端新人怎么更快的融入工作
前端
四岁爱上了她1 小时前
input输入框焦点的获取和隐藏div,一个自定义的下拉选择
前端·javascript·vue.js
fouryears_234171 小时前
现代 Android 后台应用读取剪贴板最佳实践
android·前端·flutter·dart
boolean的主人1 小时前
mac电脑安装nvm
前端
用户1972959188911 小时前
WKWebView的重定向(objective_c)
前端·ios
烟袅1 小时前
5 分钟把 Coze 智能体嵌入网页:原生 JS + Vite 极简方案
前端·javascript·llm
18你磊哥1 小时前
Django WEB 简单项目创建与结构讲解
前端·python·django·sqlite
KangJX1 小时前
iOS 语音房(拍卖房)开发实践
前端·前端框架·客户端
神秘的猪头2 小时前
🧠 深入理解 JavaScript Promise 与 `Promise.all`:从原型链到异步编程实战
前端·javascript·面试