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 18源码useMemo useCallback memo用法及区别分析

    深入React 18源码useMemo useCallback memo用法及区别分析

    这篇文章主要为大家介绍了React 18源码深入分析useMemo useCallback memo用法及区别,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04
  • 浅谈React组件props默认值的设置

    浅谈React组件props默认值的设置

    本文主要介绍了浅谈React组件props默认值的设置,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • 全栈轻量级搭配之Remix Prisma Sqlite使用分析

    全栈轻量级搭配之Remix Prisma Sqlite使用分析

    这篇文章主要为大家介绍了全栈轻量级搭配之Remix Prisma Sqlite使用示例分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-05-05
  • React中如何设置多个className

    React中如何设置多个className

    这篇文章主要介绍了React中如何设置多个className问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-01-01
  • VSCode 配置React Native开发环境的方法

    VSCode 配置React Native开发环境的方法

    本篇文章主要介绍了VSCode 配置React Native开发环境的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-12-12
  • npx create-react-app xxx创建项目报错的解决办法

    npx create-react-app xxx创建项目报错的解决办法

    这篇文章主要介绍了npx create-react-app xxx创建项目报错的解决办法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • React渲染机制超详细讲解

    React渲染机制超详细讲解

    React整个的渲染机制就是React会调用render()函数构建一棵Dom树,在state/props发生改变的时候,render()函数会被再次调用渲染出另外一棵树,重新渲染所有的节点,构造出新的虚拟Dom tree
    2022-11-11
  • React SSG实现Demo详解

    React SSG实现Demo详解

    这篇文章主要为大家介绍了React SSG实现Demo详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪<BR>
    2023-07-07
  • 详解React Hooks是如何工作的

    详解React Hooks是如何工作的

    React Hooks是在React 16.8版本新增的特性,在我看了React官网和一些博客对React Hook的讲解后还是觉得没有get到本质。本篇博客通过手动实现useState()来了解Hook的原理和本质。阅读此篇博客的前提是你要知道一些 React Hooks的基本用法和使用规则,不然会看得云里雾里。
    2021-05-05
  • react如何利用useRef、forwardRef、useImperativeHandle获取并处理dom

    react如何利用useRef、forwardRef、useImperativeHandle获取并处理dom

    这篇文章主要介绍了react如何利用useRef、forwardRef、useImperativeHandle获取并处理dom,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2023-10-10

最新评论