木灵鱼儿

木灵鱼儿

阅读:2513

最后更新:2021/03/14/ 17:58:00

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;

然后就可以在路径中使用路径别名,效果很棒。

版权申明

本文系作者 @木灵鱼儿 原创发布在木灵鱼儿 - 有梦就能远航站点。未经许可,禁止转载。

关于作者

站点职位 博主
获得点赞 0
文章被阅读 2513

相关文章

目录树