Browserify:如何使用 package.json 应用“--exclude,-u”?

Browserify: How do I apply "--exclude, -u" using package.json?

我需要在 package.json 中使用 --exclude, -u 而不是作为命令行选项,但是如何?

发件人:browserify test.js -u request > test.browserify.js
收件人:browserify test.js > test.browserify.js

可能的解决方案:

  1. --exclude 有一个 package.json 选项类似于 --ignore: "browser": { "request": false }
  2. --可以启用排除,或复制其功能,使用 "transform" 以某种方式 "browserify": {"transform": ...}
  3. ...

找到解决方案:

将以下内容添加到 package.json:"browser": { "request": "./request.js" }

创建 ./request.js 并将以下内容放入其中:

var req = "request";
module.exports = require(req);

并且您必须将 "request" 字符串放在一个单独的变量中,否则 require 将只是 return 一个空对象存根 {}

这样做的缺点是我必须为我需要的每个模块定义这样一个文件,理想情况下我有一个可以检测需要什么的文件。

编辑

尚未对此进行测试,但我可能可以在没有外部文件的情况下动态地需要这些模块 var req = "request"; var request = require(req);