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 相关文章推荐
checkbox 多选框 联动实现代码
Oct 22 Javascript
JavaScript 计算当天是本年本月的第几周
Mar 22 Javascript
理解Javascript_09_Function与Object
Oct 16 Javascript
Fastest way to build an HTML string(拼装html字符串的最快方法)
Aug 20 Javascript
打造个性化的功能强大的Jquery虚拟键盘(VirtualKeyboard)
Oct 11 Javascript
日常收藏的jquery技巧
Dec 02 Javascript
javascript 判断页面访问方式电脑或者移动端
Sep 19 Javascript
JS封装的三级联动菜单(使用时只需要一行js代码)
Oct 24 Javascript
基于JavaScript实现熔岩灯效果导航菜单
Jan 04 Javascript
React如何将组件渲染到指定DOM节点详解
Sep 08 Javascript
JS表单传值和URL编码转换
Mar 03 Javascript
微信小程序用canvas画图并分享
Mar 09 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
PHP4实际应用经验篇(7)
2006/10/09 PHP
php中引用&的用法分析【变量引用,函数引用,对象引用】
2016/12/12 PHP
静态页面的值传递(三部曲)
2006/09/25 Javascript
extjs 为某个事件设置拦截器
2010/01/15 Javascript
jquery插件制作 手风琴Panel效果实现
2012/08/17 Javascript
jquery的ajax和getJson跨域获取json数据的实现方法
2014/02/04 Javascript
jquery的ajax简单结构示例代码
2014/02/17 Javascript
jQuery实现级联菜单效果(仿淘宝首页菜单动画)
2014/04/10 Javascript
Nodejs极简入门教程(一):模块机制
2014/10/25 NodeJs
JS动态改变表格边框宽度的方法
2015/03/31 Javascript
在JavaScript中操作时间之getMonth()方法的使用
2015/06/10 Javascript
js获取时间精确到秒(年月日)
2016/03/16 Javascript
Ionic快速安装教程
2016/06/03 Javascript
jQueryUI Datepicker组件设置日期高亮
2016/10/13 Javascript
详解webpack babel的配置
2018/01/09 Javascript
微信小程序项目总结之点赞 删除列表 分享功能
2018/06/25 Javascript
vue+Vue Router多级侧导航切换路由(页面)的实现代码
2018/12/20 Javascript
js图片查看器插件用法示例
2019/06/22 Javascript
盘点提高 Python 代码效率的方法
2014/07/03 Python
不归路系列:Python入门之旅-一定要注意缩进!!!(推荐)
2019/04/16 Python
Pytorch之Variable的用法
2019/12/31 Python
Python列表操作方法详解
2020/02/09 Python
python的json包位置及用法总结
2020/06/21 Python
CSS3按钮鼠标悬浮实现光圈效果源码
2016/09/11 HTML / CSS
莫斯科的韩国化妆品店:Sifo
2019/12/04 全球购物
2014年党员自我评议(5篇)
2014/09/12 职场文书
法律专业大学生职业生涯规划书:向目标一步步迈进
2014/09/22 职场文书
幼儿园六一儿童节活动总结
2015/02/10 职场文书
大学毕业生自我评价
2015/03/02 职场文书
学雷锋团日活动总结
2015/05/06 职场文书
反腐倡廉主题教育活动总结
2015/05/07 职场文书
redis配置文件中常用配置详解
2021/04/14 Redis
vue实现水波涟漪效果的点击反馈指令
2021/05/31 Vue.js
详解Python函数print用法
2021/06/18 Python
电脑无法安装Windows 11怎么办?无法安装Win11的解决方法
2021/11/21 数码科技
深入理解go缓存库freecache的使用
2022/02/15 Golang