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) => {})实现

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

相关推荐
还这么多错误?!12 分钟前
uniapp微信小程序,使用fastadmin完成一个一键获取微信手机号的功能
微信小程序·小程序·uni-app
吃杠碰小鸡25 分钟前
lodash常用函数
前端·javascript
emoji11111134 分钟前
前端对页面数据进行缓存
开发语言·前端·javascript
泰伦闲鱼37 分钟前
nestjs:GET REQUEST 缓存问题
服务器·前端·缓存·node.js·nestjs
m0_7482500341 分钟前
Web 第一次作业 初探html 使用VSCode工具开发
前端·html
一个处女座的程序猿O(∩_∩)O1 小时前
vue3 如何使用 mounted
前端·javascript·vue.js
m0_748235951 小时前
web复习(三)
前端
IT 前端 张1 小时前
Uniapp 手机基座调试App 打包成Apk文件,并上传到应用商店
uni-app
User_undefined1 小时前
uniapp Native.js原生arr插件服务发送广播到uniapp页面中
android·javascript·uni-app
web135085886351 小时前
uniapp小程序使用webview 嵌套 vue 项目
vue.js·小程序·uni-app