1

日常开发中,我们会常常把一些功能提取出来,包装成一个公共模块或者组件,供不同地方使用,但是随着项目不断变大,项目目录不断变深,我们引用公共组件的路径越来越长!

例如:引用一个公共模块

import Menu from '../../../../../components/Menu'; // 这里路径太深,很容易写错

我们该怎么优化尼?

解决方案1:使用webpack的resolve.alias属性

先配置webpack

module.exports = {
    ...
    resolve: {
        alias: {
            "@commModule": path.resolve(__dirname, "src/components/")
        }
    }
    ...
};

引用Menu模块

import Menu from '@commModule/Menu';

解决方案2:babel-plugin-module-resolver

配置.babelrc

{
    "plugins": [
        ["module-resolver", {
            "alias": {
                "@commMdule": "./src/components"
            }
        }]
    ]
}

引用Menu模块

import Menu from '@commModule/Menu';

总结

或许这只是一个小优化,但是在实际场景中,能够大大的降低我们的维护成本,提高我们的生产效率!


Nine
2.1k 声望1.6k 粉丝

js、css、html,啥都不会的前端!