react 使用 craco库 配置 @ 路径,以及 jsconfig.json或者tsconfig.json 配置智能提示

使用 craco库 来自定义CRA配置

1、概述

Craco(Create React App Configuration Override)是一个用于扩展 Create React App(CRA)配置的工具。通过 Craco,你可以在不弹出 Create React App 的内部配置的情况下,轻松地对 CRA 的配置进行自定义。
craco配置文档:https://github.com/dilanx/craco/blob/main/packages/craco/README.md#configuration

2、安装craco

复制代码
npm i -D @craco/craco

3、在项目 根目录中创建 craco 的配置文件:craco.config.js,并在配置文件中配置路径别名,代码如下:

复制代码
const path = require('path')

module.exports = {
  // webpack 配置
  webpack: {
    // 配置别名
    alias: {
      // 约定:使用 @ 表示 src 文件所在路径
      '@': path.resolve(__dirname, 'src')
    }
  }
}

4、修改 package.json 中的脚本命令

packge.json 文件中将以下代码

复制代码
"scripts": {
    "start": "react-scripts start"
    "build": "react-scripts build"
    "test": "react-scripts test"
    "eject": "react-scripts eject"
}

修改成:

复制代码
"scripts": {
    "start": "craco start",
    "build": "craco build",
    "test": "craco test",
    "eject": "react-scripts eject"
  },

5、配置vscode识别@路径并给出路径提示

在项目根目录创建 jsconfig.json 或者 tsconfig.json 配置文件,代码如下:

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

注意: 如果是 TS 没有先配置 tsconfig.json 直接用@会报如下错:

相关推荐
Insseals3 小时前
因斯特浮动模块快速接头✨五大核心优势
前端
沐土Arvin3 小时前
港澳台行政区域json
前端
程序员鱼皮3 小时前
我花 300 块,让 Claude Fable 5 开发桌面 APP,值么?
前端
William_Xu4 小时前
JavaScript 并发控制
前端
拾年2754 小时前
从零手写 Ajax:用原生 XHR 搭建前后端交互全流程
前端·javascript·ajax
光影少年4 小时前
懒加载与分包:React.lazy + Suspense
前端·react.js·掘金·金石计划
小林ixn4 小时前
你以为你懂 + 号?看完这篇 Bun + TS 实战,才发现以前全写错了
前端·javascript·typescript
namexingyun4 小时前
开源前端生态如何成为 AI UI 生成的“燃料“:shadcn/ui、Tailwind CSS、Storybook 技术价值全解剖
java·前端·人工智能·python·ui·开源·ai编程
Zyed4 小时前
[STM32]Day15读写FLASH+读取ID
前端·stm32·性能优化
jvxiao5 小时前
你真的懂作用域吗?从编译原理角度深度 JS 的作用域
前端·javascript