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'));
相关推荐
benbenAItalk5 小时前
数字人口播视频的批量生产实践:素材规范、任务编排与质量验收
java·前端·音视频
2601_962885726 小时前
如何用 Python 扫描 A 股跳空缺口并统计缺口回补概率?
java·前端·python
西瓜太郎12346 小时前
Claude Code、Codex CLI、Gemini CLI 能否共用一枚 Key?先看协议选择矩阵
前端·api 网关·claude code·gemini cli·codex cli
陈随易8 小时前
在Finch用了62亿词元,我认为这是新一代Agent工具之神
前端·人工智能·后端
水域安全老周9 小时前
水趣钓鱼救生衣专利拆解:两级锁紧如何解决落水人衣分离
java·前端·网络
计算机魔术师9 小时前
Anthropic CEO突然喊踩刹车,OpenAI罕见力挺:AI这辆车不能只踩油门了
前端
wing989 小时前
从codex转战workbuddy使用一周的感受
前端·人工智能·后端
Highcharts.js9 小时前
常见报错排雷指南2:导出失败的官方解法
javascript·react.js·ecmascript·highcharts·可视化图表·导出模块失败·导出服务
EatFan10 小时前
Java接入支付宝 JSAPI 支付保姆教程(二):流程讲解与前后端代码讲解
前端·spring boot·后端·微信小程序·小程序·uni-app
梦想平凡10 小时前
百游棋牌源代码开发搭建教程(五):房间创建、座位分配与请求幂等实现
前端·javascript·数据库·源代码管理