React 添加引用路径时如何使用@符号作为src文件
作者:龟霸也是高达
这篇文章主要介绍了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文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!