node 自定义路径别名
用过vue cli的话,对路径中的@
应该不陌生,他表示根目录,但是在node的环境里面,我们编写模块并引入时,并没有这种方便的写法。
在node环境中,我们可以通过process.cwd()
来表示根目录,但是这样的话,每次使用绝对路径引入,路径总是需要写一大堆拼接。
const db = require(`${process.cwd()}/config/config`).database;
这样略显麻烦,于是我们可以在全局写一个引入插件的方法:
global.myRequire = function (path) {
return require(`${process.cwd()}/${path}`);
}
这句话要写在第一个运行的js文件顶部,他必须保证是第一个运行的。
使用的时候:
const db = myRequire ("config/config").database;
这样也能达到我们的目的,但是灵活度并不高。
于是,我们可以使用已经有人写好的轮子:require-directory
yarn add require-directory
安装完毕后我们在_package.json_文件添加一段我们自定义的配置
{
"_moduleAliases": {
"@": ".",
"@models": "./models",
"@core": "./core",
"@config": "./config",
"@utils": "./utils"
}
}
需要多少个就自己加多少个。
然后保存,在第一个运行的js文件开头,我们需要引入这个插件。
require("module-alias/register"); //增加路径别名
const db = myRequire ("@/config/config").database;
然后就可以在路径中使用路径别名,效果很棒。
版权申明
本文系作者 @木灵鱼儿 原创发布在木灵鱼儿站点。未经许可,禁止转载。
暂无评论数据