我有一个简单的hello world脚本main.js:
window.addEventListener('load', function() {
"use strict";
document.getElementById('output').textContent = "Hello, browser.";
});
如果我用:
构建bundle.jsbrowserify -r ./main.js > bundle.js
它不会在浏览器中运行。没有错误,只是没有执行。如果我使用:
browserify -r --debug ./main.js > bundle.js
运行正常。为什么不运行非调试运行?
答案 0 :(得分:1)
-r
表示需要。 - > -r file.js
意味着,您将把它放在一个单独的范围内以在另一个包中要求它,但它不会执行。
您的“解决方案”-r --debug
(或简称-r -d
)有效,因为require
属性没有参数/文件,因此浏览器会忽略它。
只需删除
-r --debug
即可解决您的问题。
此...
browserify -r --debug ./main.js -o ./bundle.js
...与此相同:
browserify -d ./main.js -o ./bundle.js