React项目配置路径别名“@”

React项目配置路径别名"@"

首先安装craco

bash 复制代码
npm i @craco/craco@alpha -D
npm i npm i craco-less

创建craco.config.js

bash 复制代码
const path = require('path')
const CracoLessPlugin = require('craco-less')

const resolve = (dir) => path.resolve(__dirname, dir)

module.exports = {
  plugins: [
    {
      plugin: CracoLessPlugin,
      options: {
        lessLoaderOptions: {
          lessOptions: {
            // modifyVars: { '@primary-color': '#1DA57A' },
            javascriptEnabled: true
          }
        }
      }
    }
  ],
  webpack: {
    alias: {
      '@': resolve('src'),
      components: resolve('src/components')
    }
  }
}

修改tsconfig.json

bash 复制代码
{
  "compilerOptions": {
    .......加上如下两个配置(删掉这个)
    "baseUrl": "src",
    "paths": {
      "@/*": ["*"]
    }
  },
  "include": [
    "src"
  ]
}

修改package.json 使用craco启动项目

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

最后启动成功后可能会出现问题 提示你 babel-preset-react-app 未在其依赖中声明

你需要继续安装

bash 复制代码
npm install --save-dev @babel/plugin-proposal-private-property-in-object
相关推荐
码艺-Alimjan3 小时前
Vue项目源码备份最佳实践:无视node_modules,打包体积仅2MB
前端·javascript·vue.js
隔窗听雨眠3 小时前
esbuild构建工具简介:重新定义前端构建速度的极速打包器
前端
蔓越莓3 小时前
Webpack 常用 Loader +手写Loader
前端·面试
潍坊老登4 小时前
写了一个某音自动刷视频,通过大模型分析视频主题的Android应用
前端
蔓越莓4 小时前
性能优化:webpack打包层面优化
前端·面试
TJHHH.4 小时前
XSS-labs-master
前端·web安全·xss
风月说与山鬼4 小时前
十二、Vue插件
前端·vue.js
spter。4 小时前
一次 Redis SETNX 的小插曲,我重新理解了原子性
前端·redis·bootstrap