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

vue3常用代码

文章目录

  • 监听路由
  • vue3 警告Feature flag __VUE_PROD_HYDRATION_MISMATCH_DETAILS__ is not explicitly defined.
  • mitt、project/inject 无效
    • 解决方案

菜鸟做项目时发现很多 vue3 常用的代码,所以来总结一下!

监听路由

import { useRoute } from "vue-router";
let router = useRoute();
let actroute = ref(null);
watch(() => router.path,(newValue, oldValue) => {console.log("watch", newValue, oldValue);actroute.value = newValue;},{ immediate: true }
);

vue3 警告Feature flag VUE_PROD_HYDRATION_MISMATCH_DETAILS is not explicitly defined.

vue.config.js 添加上该代码:

chainWebpack: (config) => {config.plugin("define").tap((definitions) => {Object.assign(definitions[0], {__VUE_OPTIONS_API__: "true",__VUE_PROD_DEVTOOLS__: "false",__VUE_PROD_HYDRATION_MISMATCH_DETAILS__: "false",});return definitions;});},

参考:Vue3.4+报Feature flag VUE_PROD_HYDRATION_MISMATCH_DETAILS is not explicitly defined… 处理

mitt、project/inject 无效

如果通信的组件是 router-view 里面 根据路由加载的或者有两层嵌套,那么不管是 mitt 还是 project/inject 都无法进行组件间的通信,因为 mitt 要能通信必须是该界面已经加载出来了!而 project/inject 不知道为什么,嵌套了两层后,第二层 router-view 里面的组件就无法获取了,会报错

[Vue warn]: injection "openmenu" not found. at <Resources onVnodeUnmounted=fn<onVnodeUnmounted> ref=Ref< undefined > > at <RouterView> at <ElMain> at <ElContainer> at <Home onVnodeUnmounted=fn<onVnodeUnmounted> ref=Ref< null > > at <RouterView> at <App>

好像是因为第一层 router-view 被卸载了,所以 project 为 undefined 了!

解决方案

使用pinia!

http://www.lryc.cn/news/288308.html

相关文章:

  • 【技术】SpringBoot 接口怎么加密解密
  • SqlAlchemy使用教程(六) -- ORM 表间关系的定义与CRUD操作
  • 嵌入式培训机构四个月实训课程笔记(完整版)-Linux ARM平台编程第五天-kernel配置(物联技术666)
  • Java笔记(死锁、线程通信、单例模式)
  • DAY11_(简易版)VUEElement综合案例
  • 【Kafka】开发实战和Springboot集成kafka
  • 【C语言】(1)初识C语言
  • SpringCloudStream整合MQ(待完善)
  • 【Java 数据结构】包装类简单认识泛型
  • 第139期 做大还是做小-Oracle名称哪些事(20240125)
  • 驱动开发--多路复用-信号
  • LeetCode 2859. 计算 K 置位下标对应元素的和【位操作】1000
  • composer安装hyperf后,nginx配置hyperf
  • Flink对接Kafka的topic数据消费offset设置参数
  • TryHackMe-Umbrella
  • Excel导出警告:文件格式和拓展名不匹配
  • kafka集群和Filebeat+Kafka+ELK
  • golang map真有那么随机吗?——map遍历研究
  • 详细分析对比copliot和ChatGPT的差异
  • TENT:熵最小化的Fully Test-Time Adaption
  • 研发日记,Matlab/Simulink避坑指南(五)——CAN解包 DLC Bug
  • 机器人3D视觉引导半导体塑封上下料
  • (十二)Head first design patterns代理模式(c++)
  • C++从零开始的打怪升级之路(day21)
  • 《设计模式的艺术》笔记 - 观察者模式
  • Java如何对OSS存储引擎的Bucket进行创建【OSS学习】
  • ModuleNotFoundError: No module named ‘half_json‘
  • 深入探究 Android 内存泄漏检测原理及 LeakCanary 源码分析
  • Linux CentOS使用Docker搭建laravel项目环境(实践案例详细说明)
  • 第六课:Prompt