Vue和React的运行时,校验引入包的上下文差异

背景

系统使用 webpack 5 模块联邦实现微前端,有关如何实现跨应用的代码共享,可参考 如何优雅的实现跨应用的代码共享 里的第三大点。

总之,这里是其他应用使用了某个应用共享出来的reg文件,引入方式为:

javascript 复制代码
import REG from 'Shared/utils/reg';

一、React运行时校验引入包错误

1. 基础配置文件

2. 场景分析

运行系统,不进入任何具体页面
场景1

test-page.tsx文件的具体代码内容

结果: 系统正常运行

场景2

test-page.tsx文件的具体代码内容

结果:

运行报错 ,且所有react页面都进不去

4.初步猜测(有待研究并进一步完善)

现象:只是在代码引入而未中使用的话也不会导致相关错误

个人猜测:

  1. 运行时会先校验所有页面的共享代码
  2. 不会校验所有共享代码的引入是否正确,而是校验是否能正常使用(所以就算引入了,但是没有使用的话,也不会报错)
  3. 若出现错误,可能终止了后续的路由注册,导致所有页面都进不去

二、Vue运行时校验引入包错误

结论:
  1. 只有进入具体页面时才会校验页面的引入包的路径是否正确(能否找到对应内容)
  2. 只要引入了,就算没有使用也会报错
  3. 只有进入某个具体页面时才会报错,不会影响其他页面
相关推荐
奔跑的web.8 小时前
TypeScript Enum 类型入门:从基础到实战
前端·javascript·typescript
盐真卿8 小时前
python2
java·前端·javascript
梦梦代码精8 小时前
BuildingAI vs Dify vs 扣子:三大开源智能体平台架构风格对比
开发语言·前端·数据库·后端·架构·开源·推荐算法
刘一说8 小时前
Vue3 组合式 API(Composition API):逻辑复用的革命性实践
vue.js·vue
seabirdssss9 小时前
《bootstrap is not defined 导致“获取配置详情失败”?一次前端踩坑实录》
前端·bootstrap·html
kgduu9 小时前
js之表单
开发语言·前端·javascript
摘星编程10 小时前
React Native for OpenHarmony 实战:Picker 选择器组件详解
javascript·react native·react.js
摘星编程11 小时前
React Native for OpenHarmony 实战:VirtualizedList 虚拟化列表
javascript·react native·react.js
谢尔登11 小时前
Vue3 响应式系统——computed 和 watch
前端·架构
愚公移码11 小时前
蓝凌EKP产品:主文档权限机制浅析
java·前端·数据库·蓝凌