React中使用 ts 后,craco库配置别名时需要注意什么?

文章目录


前言

我们都知道craco库可以用来覆盖react配置,如设置别名等。但是在项目使用 Typescript 后,我们需要额外配置,否则会造成编译报错。

详细craco配置可以查看之前文章:项目初始化与配置


编译报错如下

解决方式

找到本地tsconfig.json文件,添加如下配置,重新启动项目,报错就可以解决了

c 复制代码
// tsconfig.json
{
  "compilerOptions": {
    // ....
    "baseUrl": "./src",
    "paths": {
      "@/*": ["*"]
    }
    // ...
  },
}

总结

在使用 craco库时,需要同时在 tsconfig.json 文件中配置别名,因为 craco库是用于配置 Webpack 的别名,而不是 TypeScript 的别名。TypeScript 的别名是在 tsconfig.json 文件中配置的,而 Webpack 的别名可以通过craco库进行配置。这是因为 TypeScript 和 Webpack 在处理别名时有一些不同的方式,TypeScript 会在编译时将别名替换为实际路径,而 Webpack 在打包时会使用别名来解析模块路径。

相关推荐
西瓜太郎49915 小时前
别再手算 Token 成本:用 React 状态机做一个可追溯的模型费用计算器
react.js·typescript
掘金挖土15 小时前
前端手摸手跑路之 AI 应用开发(六)
前端·后端
liuyt202215 小时前
【javaweb】day4
前端
志尊宝16 小时前
Vue3 零基础每日笔记(024):组件的创建与使用——从 import 到自动导入
前端·vue.js·笔记·前端框架·html5
@PHARAOH16 小时前
WHAT - 从前端组件化思维到后端架构设计入门
前端·微服务·架构
是立不是利17 小时前
大文件导致请求被拒的连锁反应
开发语言·前端·javascript
志尊宝17 小时前
Vue3 零基础每日笔记(026):emit 子传父——defineEmits 与事件校验
前端·javascript·html·vue3
风骏时光牛马17 小时前
6个高频实用技术脚本案例,覆盖运维与办公自动化(可直接复用)
前端
爱吃红星柚17 小时前
【学习】Elpis 抽离与发布 npm 包
前端·前端框架·node.js
PedroQue9918 小时前
0.5.0重磅发布:动画插件+H5体验全面优化
前端·uni-app