为什么Browserify在模块路径上添加点?

时间:2018-11-08 04:05:18

标签: javascript module browserify

我有一个build.js

require('./moment');
require('./dashboard.js');
require('./custom-summernote-bs4.js');
require('./summernote-es-ES.js');
const Noty = require('noty');

// [...] regular code

并使用:browserify public/dashboard/javascript/build.js -o BUNDLE.js

我收到此错误:

Error: Cannot find module '../moment' from '/out/of/project/public/dashboard/javascript'
    at /usr/local/lib/node_modules/browserify/node_modules/browser-resolve/node_modules/resolve/lib/async.js:55:21
    at load (/usr/local/lib/node_modules/browserify/node_modules/browser-resolve/node_modules/resolve/lib/async.js:69:43)
    at onex (/usr/local/lib/node_modules/browserify/node_modules/browser-resolve/node_modules/resolve/lib/async.js:92:31)
    at /usr/local/lib/node_modules/browserify/node_modules/browser-resolve/node_modules/resolve/lib/async.js:22:47
    at FSReqWrap.oncomplete (fs.js:152:21)

无论我将矩文件或build.js放在何处;无论我使用'moment'还是'moment.js';或下移要求线...

由于某些原因,Browserify(或依赖项)将这些'..'添加到moment.js的前面。因此,它当然不起作用,因为它不在../中。 如果我删除了那一刻的要求,其余的捆绑在一起就可以了。

编辑:代替常规npm模块(我已安装用于后端使用)使用require('moment')可以正常工作。我宁愿使用本地./moment.js,因为它有一些修改。

为什么会发生,我该如何解决?

0 个答案:

没有答案