uniapp 页面通信

navigateTo

// 在起始页面跳转到test.vue页面,并监听test.vue发送过来的事件数据
uni.navigateTo({
   
  url: '/pages/test?id=1',
  events: {
   
    // 为指定事件添加一个监听器,获取被打开页面传送到当前页面的数据
    acceptDataFromOpenedPage: function(data) {
   
      console.log(data)
    },
    ...
  },
  success: function(res) {
   
    // 通过eventChannel向被打开页面传送数据
    res.eventChannel.emit('acceptDataFromOpenerPage', {
    data: 'data from starter page' })
  }
})

注意:vue3 与 vue 2 被打开页面初始化 略有不同

vue2

onLoad: function(option) {
   
  const eventChannel = this.getOpenerEventChannel();
  // 监听acceptDataFromOpenerPage事件,获取上一页面通过eventChannel传送到当前页面的数据
  eventChannel.on('acceptDataFromOpenerPage', function(data) {
   
    console.log(data)
  })
}

Vue3

// 在test.vue页面,向起始页通过事件传递数据
import {
    onLoad } from '@dcloudio/uni-app'
import {
    getCurrentInstance, ref } from 'vue'
const _this = getCurrentInstance().proxy
onLoad(() => {
   
  let eventChannel = _this.getOpenerEventChannel()
  // 监听acceptDataFromOpenerPage事件,获取上一页面通过eventChannel传送到当前页面的数据
  eventChannel.on('acceptDataFromOpenerPage', (data) => {
   
  	console.log(data)
  })
})

被打开页面,向打开页面传递消息,需要将 eventChannel 缓存,并在对应时刻,调用 eventChannel.emit

<script setup>
let eventChannel = null

onLoad(() => {
   
  // xxx
  eventChannel = _this.getOpenerEventChannel()
})
const submit = () => {
   
  eventChannel.emit('onConfirm', {
   })
  uni.navigateBack()
}
</script>


相关推荐

  1. uniapp 页面通信

    2023-12-14 06:10:03       69 阅读
  2. uniapp 页面跳转通信上下级页面互传

    2023-12-14 06:10:03       34 阅读
  3. 在 H5 页面uniapp 小程序之间进行数据通信

    2023-12-14 06:10:03       33 阅读
  4. nvue页面用法uniapp

    2023-12-14 06:10:03       61 阅读
  5. uniapp父子组件通信

    2023-12-14 06:10:03       53 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-14 06:10:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-14 06:10:03       101 阅读
  3. 在Django里面运行非项目文件

    2023-12-14 06:10:03       82 阅读
  4. Python语言-面向对象

    2023-12-14 06:10:03       91 阅读

热门阅读

  1. 华为实训课笔记

    2023-12-14 06:10:03       52 阅读
  2. 回调地狱Axios

    2023-12-14 06:10:03       52 阅读
  3. 编写一个简易的 Axios 函数

    2023-12-14 06:10:03       57 阅读
  4. C++中的接口有什么用

    2023-12-14 06:10:03       58 阅读
  5. 服务器数据被盗了该怎么办

    2023-12-14 06:10:03       64 阅读
  6. 51.0/表单(详细版)

    2023-12-14 06:10:03       59 阅读
  7. react中MQTT的基础用法

    2023-12-14 06:10:03       56 阅读
  8. 跟着官网学 Vue - Props

    2023-12-14 06:10:03       53 阅读
  9. 使用python的socketserver使服务器支持多客户端访问

    2023-12-14 06:10:03       57 阅读