React+ts配置别名

1.craco

npm i @craco/craco

 在根目录创建craco.config.js,内容如下

const path = require('path');
module.exports = {
  webpack: {
    alias: {
      '@': path.join(__dirname, 'src'),
      '@pages': path.join(__dirname, 'src/pages'),
    },
  },
};

在package.json将script修改成如下

 "scripts": {
    "start": "craco start",
    "build": "craco build",
    "test": "craco test"
  }

2.在tsconfig.json添加

"compilerOptions": {
    // 别名配置
    "baseUrl": "./",
    "paths": {
      "@/*": ["src/*"],
      "@pages/*": ["src/pages/*"]
    },
   。。。。。。
}

 扩展:

eslint规则里面引入排序import/order

1.下载相关

npm i eslint-plugin-import eslint-import-resolver-typescript 

2.在eslint.json配置

{
  "env": {
    "browser": true,
    "es2021": true,
    "node": true
  },
  "extends": [
    。。。。。。
    "plugin:import/recommended" // 添加
  ],
 
  "rules": {
     。。。。。。
    "import/order": [ // 添加引入的排序
      "error",
      {
        "groups": ["builtin", "external", "internal"],
        "pathGroups": [
          {
            "pattern": "react",
            "group": "external",
            "position": "before"
          }
        ],
        "pathGroupsExcludedImportTypes": ["react"],
        "newlines-between": "always",
        "alphabetize": {
          "order": "asc",
          "caseInsensitive": true
        }
      }
    ]
  },
  "settings": {  //添加
    "import/resolver": {
      "node": {
        "extensions": [".ts", ".tsx"],
        "moduleDirectory": [
          "node_modules",
          "src/"
        ]
      },
      "typescript": {
        "alwaysTryTypes": true
      }
    },
    "react": {
      "version": "detect"
    }
  }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值