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

前端|babel升级

问题

  • 项目不支持可选链调用
  • 过多的 babel 插件

步骤

  1. 基础包
  • dependencies
    • “react-scripts”: “5.0.1”
  • devDependencies
    • “customize-cra”: “^1.0.0”,
    • “react-app-rewired”: “^2.2.1”,
  1. 框架包
  • dependencies
    • “react”: “16.13.1”,
    • “react-dom”: “16.13.1”,
      “react-router”: “^4.3.1”,
      “react-router-dom”: “^4.3.1”,
  • devDependencies
    • “customize-cra”: “^1.0.0”,
    • “react-app-rewired”: “^2.2.1”,
    • “less-loader”: “4.1.0”,
    • “lint-staged”: “^7.2.0”,
    • “prettier”: “^2.3.2”,
    • “styled-components”: “^5.2.0”,
    • “cross-env”: “^5.2.0”,
  1. 构建包
  • “happypack”: “^5.0.1”,
  • “react-app-rewire-happy-pack”: “^1.0.0”,
  • “react-app-rewire-webpack-bundle-analyzer”: “^1.0.1”,
  • “terser-webpack-plugin”: “^5.3.9”,
  • “webpack-bundle-analyzer”: “^2.13.1”,
  • “webpackbar”: “^5.0.2”
  1. 业务包

其他问题处理

  1. 全路径问题 fully specific
    webpack5 对路径的要求也更严格,需要是全路径 mjs 支持
    addWebpackModuleRule({
    test: /.m?js/,
    resolve: {
    fullySpecified: false,
    },
    }),

  2. babel/runtime

  • 首先第一个问题是有很多 babel/runtime 相关的报错,而且报错的地方不在我们的项目里,而是在 node_modules 里面
    yarn add -D @babel/runtime
  1. node ployfill
    webpack5 也移除了 node 模块的 ployfill,以后我们用到的需要自己安装了,
    基本上 node ployfill 项目中也很少用到,我这边看到的报错,大部分还是 node_modules 里看到的。
    yarn add -D stream

  2. postcss
    yarn add -D postcss-at-rules-variables

create-react-app react-scripts 升级,从 3.x 升到 5.x 踩坑(webpack5 升级踩坑)

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

相关文章:

  • 【微服务】spring状态机模式使用详解
  • 【算法刷题day14】Leetcode:144.二叉树的前序遍历、94.二叉树的中序遍历、145.二叉树的后序遍历
  • mysql闲谈
  • 物联网学习1、什么是 MQTT?
  • 【机器学习】数据探索(Data Exploration)---数据质量和数据特征分析
  • 软件测试(一)--简介+主流技能+分类+模型+流程
  • 技术引领,策略升级:腾讯云与你共探数字金融新篇章
  • 数据库-root密码丢失的重置方案(win11环境)
  • 免试生常问的一些问题汇总---专升本学习篇
  • FPGA的就业前景
  • 7.阻塞模式与非阻塞模式
  • Unity类银河恶魔城学习记录11-10 p112 Items drop源代码
  • EasyExcel 模板导出excel、合并单元格及单元格样式设置。 Freemarker导出word 合并单元格
  • 炫我科技:云渲染领域的佼佼者
  • VsCode正确解决vue3+Eslint+prettier+Vetur的配置冲突
  • 计算机网络—VLAN 间路由配置
  • 微服务篇-C 深入理解第一代微服务(SpringCloud)_VII 深入理解Swagger接口文档可视化管理工具
  • 区块链的应用领域:重塑未来的信任机制
  • 怎么在循环List的时候删除List的元素
  • SpringBoot+thymeleaf完成视频记忆播放功能
  • ES 7.12官网阅读-ILM(index lifecycle management)
  • Jenkins执行策略(图文讲解)
  • 1,static 关键字.Java
  • 网络语义实体对齐(Entity Alignment)相关论文与数据集整理
  • 【自动装箱以及包装类的缓存】⭐️通过具体案例看下每种包装类的不同结果
  • Java(内部类)
  • c++对象指针
  • js 拼接HTML时 onclick方法和传参报错[onject Object] 和 unexpected end of input`
  • 基于springboot实现定时任务,并且添加Event事件处理机制
  • 深入理解数据结构(1):复杂度详解