leiwuhen-67's blog leiwuhen-67's blog
首页
    • 《Vue》笔记
    • 《React》笔记
    • 《NodeJs》笔记
    • 《CSS》笔记
    • 《Redis》笔记
    • 基础入门
    • 《Mock》笔记
    • 《MySQL》笔记
    • 《Git》相关
影音视听
收藏
关于
GitHub (opens new window)

我的公众号

首页
    • 《Vue》笔记
    • 《React》笔记
    • 《NodeJs》笔记
    • 《CSS》笔记
    • 《Redis》笔记
    • 基础入门
    • 《Mock》笔记
    • 《MySQL》笔记
    • 《Git》相关
影音视听
收藏
关于
GitHub (opens new window)
  • React

    • 使用React脚手架快速搭建项目
    • hooks之useEffect
    • React之事件绑定及简写方式
    • React之props传值并对其进行限制
    • React之Refs的基本使用
    • React之生命周期钩子
    • React之key的使用
    • React之代理服务器配置
    • React之封装全局Loading组件
    • React之消息的发布-订阅(pubsub-js)
    • React之Redux的基本使用
    • React之react-redux的基本使用
    • React之redux的数据持久化存储
    • React之路由懒加载
    • React之Render Props的使用
    • React之createBrowserRouter
    • React之路径别名@配置
    • React之craco打包优化配置
    • React之项目国际化
    • React之postcss-pxtorem移动端适配
    • React之使用vite创建项目
    • React之ts类型标注汇总
    • React之使用 ant design搭建后台管理之踩坑
    • React之路由切换动画
    • React之使用vite创建组件库并发布到npm
    • React之项目打包部署到nginx
    • React之自定义组件添加className与style
  • React Native

  • 《React》笔记
  • React
心欲无痕
2024-04-01

React之路径别名@配置

在开发过程中,我们经常需要导入各种组件、各种样式文件、接口 api 等等,因此会出现许多类似./和../等这种路径,如果层级嵌套的较多的话,则会出现许多../../ 这种,写起来非常麻烦,那么有没有什么办法能够像 vue 那样的,直接写路径别名,然后会自动给你指定到某一个文件夹下呢?当然是可以的,这就需要我们配置路径别名了。

配置路径别名,这里用到了第三方库,就是 @craco/craco

1、安装 @craco/craco

npm install @craco/craco
1

2、创建 craco.config.js 配置文件 (切记,项目根目录下创建)

const path = require('path')
module.exports = {
  // webpack 配置
  webpack: {
    // 配置别名
    alias: {
      // 约定:使用 @ 表示 src 文件所在路径
      '@': path.resolve(__dirname, 'src')
    }
  }
}
1
2
3
4
5
6
7
8
9
10
11

3、修改 package.json 中脚本命令,配置启动和打包命令

"scripts": {
  "start": "craco start",
  "build": "craco build",
  "test": "craco test",
  "eject": "react-scripts eject"
},
1
2
3
4
5
6

现在,重新启动项目,就可以使用路径别名 @符号来代替 */src 路径了

如果在 vscode 中开发时,我们手动输入 @符号时,发现没有路径提示,这时候需要我们在项目根目录下创建 jsconfig.json 文件(ts 中则为 tsconfig.json)增加如下配置

{
  "compilerOptions": {
    "allowJs": true,
    "baseUrl": ".",
    "paths": {
        "@/*": [
            "src/*"
        ]
    }
  },
  "include": ["src/**/*"],
  "exclude": ["node_modules", "dist"]
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14

此时,就可以愉快地使用路径别名来开发了。

编辑 (opens new window)
上次更新: 7/1/2024, 4:56:33 PM
React之createBrowserRouter
React之craco打包优化配置

← React之createBrowserRouter React之craco打包优化配置→

Theme by Vdoing
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式