zoukankan      html  css  js  c++  java
  • 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';
    
  • 相关阅读:
    rabbitmq延迟队列相关
    redis发布/订阅模式
    flask中的blueprint
    Maven学习总结(五)——聚合与继承
    Maven学习总结(四)——Maven核心概念--转载
    Maven学习总结(四)——Maven核心概念——转载
    Maven学习总结(三)——使用Maven构建项目
    Maven学习总结(二)——Maven项目构建过程练习_转载
    使用Maven编译项目遇到——“maven编码gbk的不可映射字符”解决办法 ——转载
    Maven学习总结(一)——Maven入门——转载
  • 原文地址:https://www.cnblogs.com/datiangou/p/10161780.html
Copyright © 2011-2022 走看看