最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

如何设置与节点包名的缺省回退范围需要()

运维笔记admin10浏览0评论

如何设置与节点包名的缺省/回退范围需要()

如何设置与节点包名的缺省/回退范围需要()

我使用的是特定的模块在我的节点代码:

const example = require('example');

然而这个模块是缓慢的更新,所以我已付出,并根据我自己对npmjs范围与我的更新发布它。但是现在用我自己的模块,我必须改变我的代码每次使用:

const example = require('@my-username/example');

这里的问题是,我将不得不承担一堆全国各地的许多文件的改变重命名的模块,然后当上游合并我变成正式版,我将不得不再次更新我的代码从require()所有取出的范围操作这些文件,然后将其添加回来,如果我有更多的变化是缓慢的接受,等等。

有没有一种方法,我可以告诉节点或NPM,如果require()找不到名称中没有范围模块,以然后检查@scope所有node_modules文件夹以查看是否有匹配呢?

如果这是可能的话,我将只需要与相关的包装版本和代码,我在我的叉子和正式版之间切换本身可以保持不变更新package.json

回答如下:

您可以使用module-alias实现它

这会减慢你的启动,但是让你写这一切的逻辑为每一个需要你在你的应用程序中进行。

const moduleAlias = require('module-alias')

// Custom handler function (starting from v2.1)
moduleAlias.addAlias('request', (fromPath, request, alias) => {
  console.log({
    fromPath,
    request,
    alias,
  });

  return __dirname + '/my-custom-request'
})

require('request')
发布评论

评论列表(0)

  1. 暂无评论