当前位置: 首页 > news >正文

vue3使用provide和inject传递异步请求数据子组件接收不到

前言

一般接口返回的格式是数组或对象,使用reactive定义共享变量

父组件传递

const data = reactive([])// 使用settimout模拟接口返回
setTimeout(() => {// 将接口返回的数据赋值给变量Object.assign(data, [{ id: 10000 }])
}, 3000);provide('shareData', data);// 这行代码也不用写在异步请求回调里,我一般放在js代码最底部

子组件接收

<template>{{ receiveData }}
</template><script lang="ts" setup>
import { inject } from 'vue';const receiveData = inject('shareData')
console.log(receiveData );// 这个位置打印时取不到最新的数据,直接在html代码里使用,会有数据// 如果想在js中处理后使用,加个watch监听,采用深度监听deep:true
watch(() => receiveData, (res) => {console.log(res);// TODO处理数据
}, { deep: true })</script>

可以看到子组件模板中先显示初始值,待接口返回后更新为最新值 

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 线程(二) 线程清理和控制、线程的属性
  • 4.C_数据结构_队列
  • 用Java实现人工智能
  • Selenium实现滑动滑块验证码验证!
  • 龙蜥8.9系统hadoop3.3.6上spark3.5.2安装(伪分布)
  • 在RabbitMQ中四种常见的消息路由模式
  • Red Hat 和 Debian Linux 对比
  • 小程序体验版无法正常请求接口,开启 调试可以正常请求
  • 本地不能訪問linux的kafka服務
  • 大模型教程:使用 Milvus、vLLM 和 Llama 3.1 搭建 RAG 应用
  • this 指向
  • vmware中的ubuntu系统扩容分区
  • uniapp如何实现图片轮播特效?
  • 全面掌握 Jest:从零开始的测试指南(下篇)
  • 【python】OpenCV—Mask RCNN for Object Detection and Instance Segmentation
  • (十五)java多线程之并发集合ArrayBlockingQueue
  • 10个确保微服务与容器安全的最佳实践
  • 11111111
  • django开发-定时任务的使用
  • Flannel解读
  • JavaScript 奇技淫巧
  • k8s 面向应用开发者的基础命令
  • Linux后台研发超实用命令总结
  • sublime配置文件
  • Web设计流程优化:网页效果图设计新思路
  • 阿里云应用高可用服务公测发布
  • 简单实现一个textarea自适应高度
  • 每个JavaScript开发人员应阅读的书【1】 - JavaScript: The Good Parts
  • 让你成为前端,后端或全栈开发程序员的进阶指南,一门学到老的技术
  • 数据仓库的几种建模方法
  • 吐槽Javascript系列二:数组中的splice和slice方法
  • 小试R空间处理新库sf
  • 不要一棍子打翻所有黑盒模型,其实可以让它们发挥作用 ...
  • ​如何使用ArcGIS Pro制作渐变河流效果
  • # SpringBoot 如何让指定的Bean先加载
  • #laravel部署安装报错loadFactoriesFrom是undefined method #
  • (1)虚拟机的安装与使用,linux系统安装
  • (4)事件处理——(7)简单事件(Simple events)
  • (NO.00004)iOS实现打砖块游戏(十二):伸缩自如,我是如意金箍棒(上)!
  • (二)windows配置JDK环境
  • (深入.Net平台的软件系统分层开发).第一章.上机练习.20170424
  • (一)SpringBoot3---尚硅谷总结
  • **CI中自动类加载的用法总结
  • .CSS-hover 的解释
  • .Net Core 中间件验签
  • .net 连接达梦数据库开发环境部署
  • .Net6 Api Swagger配置
  • .NET上SQLite的连接
  • .NET下的多线程编程—1-线程机制概述
  • .NET中使用Redis (二)
  • ::什么意思
  • ??在JSP中,java和JavaScript如何交互?
  • [ A*实现 ] C++,矩阵地图
  • [ 网络通信基础 ]——网络的传输介质(双绞线,光纤,标准,线序)
  • [<MySQL优化总结>]