create-react-app创建ts项目-引入antd踩坑

1.安装路由插件时安装@types/react-router-dom

2.index.tsx中删除<React.StrictMode>标签

Error: Cannot find module 'react-scripts/config/env.js'

bash 复制代码
yarn add react-scripts

4.路由懒加载+代码分割打包

bash 复制代码
yarn add react-loadable babel-plugin-syntax-dynamic-import --dev

参考:

react实现路由懒加载(异步组件)_react react-loadable babel-plugin-syntax-dynamic-i_qianlingvip的博客-CSDN博客

babel-plugin-syntax-dynamic-import_xiange18的博客-CSDN博客

5.分环境打包

bash 复制代码
npm install dotenv-cli --save-dev

通过dotenv -e .env.tst(配置文件名) craco build打包指令 完成打包

参考

create-react-app中分环境打包_zerocher的博客-CSDN博客

6.设置打包后出口文件路径

package.json中添加homepage属性

7.查看打包的静态资源文件报错

Uncaught DOMException:Failed to execute 'replaceState' on 'History': A history state object with URL 'file:///home' cannot be created in a document with origin 'null' and URL 'file:///Users/hzby/Desktop/user/demo/ts-hooks-project/build/index.html#/home'.

路由改为HashRouter

8.antd样式按需加载

bash 复制代码
 npm i -D less@2.7 babel-plugin-import

配置Antd样式按需引入

同样是打开 webpack.config.js文件

文件搜索babel-loader 找到下面pulgins

添加一个配置项即可

复制代码
["import", { 'libraryName': 'antd', style: true }]

万事大吉项目中直接引入antd的组件即可,无需再全局引入antd的css样式

最后修改完webpack.config.js配置记得重启项目

9.使用Magic Comments魔术注释法设置打包文件名称

javascript 复制代码
const Home = loadable(()=>import(/* webpackChunkName: 'Home'*/'./../page/home'));
相关推荐
invicinble37 分钟前
c端系统,其实更像一个信息展示平台
前端
李姆斯1 小时前
管理是否可以被完全量化
前端·产品经理·团队管理
名字还没想好☜2 小时前
Next.js 中间件实战:鉴权、重定向与 A/B 分流
开发语言·前端·javascript·中间件·react·next.js
广州灵眸科技有限公司2 小时前
瑞芯微RV1126B开发板(EASY-EAI-PI2) INI文件操作
java·前端·javascript·网络·人工智能
江华森3 小时前
Web 开发基础:HTTP 与 REST
前端·网络协议·http
IT_陈寒3 小时前
Redis的KEYS命令把我搞崩溃了,改用SCAN才活过来
前端·人工智能·后端
Jackson__4 小时前
为什么 Agent 越聊越慢?聊聊 Context(上下文)管理
前端·agent·ai编程
KaMeidebaby4 小时前
卡梅德生物技术快报|抗体合成:多肽抗体合成工程化方案:Nsp2 保守肽多抗制备与多维度验证
前端·网络·数据库·人工智能·算法
青禾网络4 小时前
前端做音画匹配这件事,我从"随机塞"到"AI 自动对齐"
前端·github
2601_963771375 小时前
Hardening Enterprise WordPress Sites Against REST API Leaks and Bad Headers
前端·windows·word·php