React 添加引用路径时如何使用@符号作为src文件

 更新时间:2023年06月12日 10:02:47   作者:龟霸也是高达  
这篇文章主要介绍了React 添加引用路径时如何使用@符号作为src文件,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

在react引用组件时,我们经常会遇到下图的情况

在这里插入图片描述

  • '…/…/…/'来指代文件所在文件夹的文职
  • 这种’…/'很不美观也很难读,看着就很复杂,很难读,不能一眼知道文件所在的位置情况
  • 在vue中,我们可以使用@来指代src文件夹

那么在react中,怎么使用@符号指代src文件夹呢?

  • 因为我的项目有用到antd,所以直接使用craco来配置

引入craco

$ yarn add @craco/craco

修改package.json文件,将craco作为执行文件

/* package.json */
"scripts": {
-   "start": "react-scripts start",
-   "build": "react-scripts build",
-   "test": "react-scripts test",
+   "start": "craco start",
+   "build": "craco build",
+   "test": "craco test",
}

配置craco.config.js文件

在项目根目录创建一个 craco.config.js 用于修改默认配置。

/* craco.config.js */
module.exports = {
  // ...
};

将js的根路径和你想要自定义的路径拼接起来

const path = require("path")//导入path模块
//定义函数resolve,将你想要自定义的路径和js的根路劲作拼接
const resolve = dir =>path.resolve(__dirname,dir)

在module.exports中添加webpack相关配置

module.exports = {
  webpack:{
    alias:{
    //名称:路径
      "@":resolve("src")
    }
  }
};

然后就成功了,这样就不不用使用inject命令也能自定义目录了

附录:react项目配置 @ 为src根目录

前置:

修改jsconfig.json文件

{
  "compilerOptions": {
    "jsx": "react",
    "experimentalDecorators": true,
    "baseUrl": "./",
    "paths": {
      "@/*": [
        "src/*"
      ]
    }
  }
}

1. 原生create-react-app 的情况

若已经使用 “npm run eject” 暴露了webpack.config.js文件

修改 config/webpack.config.js 文件配置(找到alias)

const paths = require('./paths');
resolve: {
    alias: {
        '@': paths.appSrc
    },
}

2.未暴露webpack.config.js配置文件的情况(请参考文章开头介绍)

到此这篇关于React 添加引用路径时如何使用@符号作为src文件的文章就介绍到这了,更多相关React使用@符号作为src文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • React函数式组件与类组件的不同你知道吗

    React函数式组件与类组件的不同你知道吗

    这篇文章主要为大家详细介绍了React函数式组件与类组件的不同,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-03-03
  • React Class组件生命周期及执行顺序

    React Class组件生命周期及执行顺序

    这篇文章主要介绍了React Class组件生命周期,包括react组件的两种定义方式和class组件不同阶段生命周期函数执行顺序,本文给大家介绍的非常详细,需要的朋友可以参考下
    2021-08-08
  • react封装全局弹框的方法

    react封装全局弹框的方法

    这篇文章主要为大家详细介绍了react封装全局弹框的方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10
  • 详解React Native项目中启用Hermes引擎

    详解React Native项目中启用Hermes引擎

    这篇文章主要为大家介绍了React Native项目中启用Hermes引擎实例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-09-09
  • react hooks深拷贝后无法保留视图状态解决方法

    react hooks深拷贝后无法保留视图状态解决方法

    这篇文章主要为大家介绍了react hooks深拷贝后无法保留视图状态解决示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-06-06
  • React服务端渲染原理解析与实践

    React服务端渲染原理解析与实践

    这篇文章主要介绍了React服务端渲染原理解析与实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • React Native中Mobx的使用方法详解

    React Native中Mobx的使用方法详解

    这篇文章主要给大家介绍了关于React Native中Mobx的使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-12-12
  • 如何不使用eject修改create-react-app的配置

    如何不使用eject修改create-react-app的配置

    许多刚开始接触create-react-app框架的同学,不免都会有个疑问:如何在不执行eject操作的同时,修改create-react-app的配置。
    2021-04-04
  • react组件memo useMemo useCallback使用区别示例

    react组件memo useMemo useCallback使用区别示例

    这篇文章主要为大家介绍了react组件memo useMemo useCallback使用区别的示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • react高阶组件经典应用之权限控制详解

    react高阶组件经典应用之权限控制详解

    在React中,高阶组件是重用组件逻辑的一项高级技术。下面这篇文章主要给大家介绍了关于react高阶组件经典应用之权限控制的相关资料,文中通过示例代码介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-09-09

最新评论