React如何利用相对于根目录进行引用组件详解


Posted in Javascript onOctober 09, 2017

前言

本文主要给大家介绍了关于React利用相对于根目录进行引用组件的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

在对自己开发的组件中经常会做诸如以下的引用:

import genFetchEntryListArgs from '../../../utils/table/genFetchEntryListArgs';
import { parseQuery, stringifyQuery } from '../../../utils/query';
import mapMyToProps from '../../../utils/connect/mapMyToProps';
import genPagination from '../../../utils/table/pagination';
import handleConfirm from '../../../utils/handleConfirm';
import getBaseQuery from '../../../utils/getBaseQuery';
import setSortQuery from '../../../utils/setSortQuery';
import handleError from '../../../utils/handleError';
import injectProto from '../../../utils/injectProto';
import injectApi from '../../../utils/injectApi';
import querySchema from './querySchema';
import genColumns from './genColumns';

这样使用相对路径引用虽然是比较常见的做法,不过在中大型项目中,引入的组件较多时,写起来也是极其蛋疼的。

当然,我们可以通过使用 webpack 中的 resolve.alias 配置别名,将某些文件目录配置成固定的引入。

例如上面的示例,我们可以将 utils 文件夹设置成一个 utils 别名,以后就可以只需要将 utils 引入就行了,而不需要写一坨 ../../../。

配置设置如下:

const path = require('path');

module.exports = {
 ...
 resolve: {
  alias: {
   'utils': path.resolve(__dirname, '../src/utils'),
  }
 },
 ...
};

最上面的示例经过改写之后,应该如此:

import genFetchEntryListArgs from '../../../utils/table/genFetchEntryListArgs';
import { parseQuery, stringifyQuery } from 'utils/query';
import mapMyToProps from 'utils/connect/mapMyToProps';
import genPagination from 'utils/table/pagination';
import handleConfirm from 'utils/handleConfirm';
import getBaseQuery from 'utils/getBaseQuery';
import setSortQuery from 'utils/setSortQuery';
import handleError from 'utils/handleError';
import injectProto from 'utils/injectProto';
import injectApi from 'utils/injectApi';
import querySchema from './querySchema';
import genColumns from './genColumns';

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
Javascript 学习笔记 错误处理
Jul 30 Javascript
说明你的Javascript技术很烂的五个原因
Apr 26 Javascript
JavaScript中Math对象方法使用概述
Jan 02 Javascript
node.js中的fs.lchownSync方法使用说明
Dec 16 Javascript
angular简介和其特点介绍
Jan 29 Javascript
JS实现iframe自适应高度的方法(兼容IE与FireFox)
Jun 24 Javascript
Bootstrap 源代码分析(未完待续)
Aug 17 Javascript
js实现右键菜单功能
Nov 28 Javascript
原生js实现对Ajax的封装(仿jquery)
Jan 22 Javascript
laravel5.4+vue+element简单搭建的示例代码
Aug 29 Javascript
Vue项目引发的「过滤器」使用教程
Mar 12 Javascript
详解如何给React-Router添加路由页面切换时的过渡动画
Apr 25 Javascript
React Native中的RefreshContorl下拉刷新使用
Oct 09 #Javascript
JS实现的全排列组合算法示例
Oct 09 #Javascript
js + css实现标签内容切换功能(实例讲解)
Oct 09 #Javascript
jQuery ajax调用webservice注意事项
Oct 08 #jQuery
js用类封装pop弹窗组件
Oct 08 #Javascript
利用js编写网页进度条效果
Oct 08 #Javascript
MUI顶部选项卡的用法(tab-top-webview-main)详解
Oct 08 #Javascript
You might like
Prototype使用指南之array.js
2007/01/10 Javascript
javascript中的作用域scope介绍
2010/12/28 Javascript
jquery 表格的增行删行实现思路
2013/03/21 Javascript
js校验表单后提交表单的三种方法总结
2014/02/28 Javascript
JavaScript实现梯形乘法表的方法
2015/04/25 Javascript
javascript电商网站抢购倒计时效果实现
2015/11/19 Javascript
三分钟带你玩转jQuery.noConflict()
2016/02/15 Javascript
三个js循环的关键字示例(for与while)
2016/02/16 Javascript
JavaScript DOM 对象深入了解
2016/07/20 Javascript
如何防止INPUT按回车自动提交表单FORM
2016/12/06 Javascript
使用jQuery.Pin垂直滚动时固定导航
2017/05/24 jQuery
基于js 本地存储(详解)
2017/08/16 Javascript
Vue实现内部组件轮播切换效果的示例代码
2018/04/07 Javascript
vue2.0 资源文件assets和static的区别详解
2018/04/08 Javascript
详解vuex状态管理模式
2018/11/01 Javascript
原生JS实现汇率转换功能代码实例
2020/05/13 Javascript
PHP读取远程txt文档到数组并实现遍历
2020/08/25 Javascript
解决vuex改变了state的值,但是页面没有更新的问题
2020/11/12 Javascript
Python实现把json格式转换成文本或sql文件
2015/07/10 Python
python 通过xml获取测试节点和属性的实例
2018/03/31 Python
python实现列表中由数值查到索引的方法
2018/06/27 Python
Python函数参数操作详解
2018/08/03 Python
解决pycharm remote deployment 配置的问题
2019/06/27 Python
Python 变量的创建过程详解
2019/09/02 Python
使用keras框架cnn+ctc_loss识别不定长字符图片操作
2020/06/29 Python
python 实现音频叠加的示例
2020/10/29 Python
CSS3中各种颜色属性的使用教程
2016/05/17 HTML / CSS
2分钟教你实现环形/扇形菜单(基础版)
2020/01/15 HTML / CSS
萨克斯第五大道的折扣店:Saks Fifth Avenue OFF 5TH
2016/08/25 全球购物
阿提哈德航空官方网站:Etihad Airways
2017/01/06 全球购物
介绍一下Ruby的多线程处理
2013/02/01 面试题
教师教育心得体会
2016/01/19 职场文书
小程序与后端Java接口交互实现HelloWorld入门
2021/07/09 Java/Android
CSS3实现指纹特效代码
2022/03/17 HTML / CSS
Vscode中SSH插件如何远程连接Linux
2022/05/02 Servers
小程序实现侧滑删除功能
2022/06/25 Javascript