我正在使用 gulp、browserify 和 watchify。这是我的“脚本”任务:
gulp.task('scripts', function() {
var b = watchify(browserify(paths.app.root + '/client.js', watchify.args));
b.on('update', bundle);
return bundle();
function bundle() {
return b
.bundle()
.pipe(source('bundle.js'))
.pipe(gulp.dest(paths.build.root + '/scripts'));
}
});
client.js
好像:require('request');
alert('1');
在哪里
request
是 Node 模块(http 客户端):https://github.com/request/request当我运行此任务并执行代码时 - 一切都很好。当我更改
client.js
时问题就开始了.当我评论 alert('1')
, watchify 开始它的工作和 bundle()
再次运行。当我在浏览器上重新加载页面时,我收到以下 javascript 异常:Uncaught TypeError: Cannot read property 'version' of undefined
使用以下堆栈跟踪:
/Users/me/project/node_modules/browserify/node_modules/crypto-browserify/node_modules/browserify-sign/node_modules/elliptic/lib/elliptic.js.../package.jsonbundle.js:19825
/Users/me/project/node_modules/browserify/node_modules/crypto-browserify/node_modules/create-ecdh/node_modules/elliptic/lib/elliptic.js.../package.jsonbundle.js:1
/Users/me/project/node_modules/browserify/node_modules/crypto-browserify/node_modules/create-ecdh/ecdh.js.bn.js
/Users/me/project/node_modules/browserify/node_modules/crypto-browserify/node_modules/create-ecdh/inject.js../ecdh
/Users/me/project/node_modules/browserify/node_modules/crypto-browserify/index.js.browserify-aes
/Users/me/project/node_modules/request/lib/helpers.js._process
/Users/me/project/node_modules/request/index.js../lib/cookies
./client.js.request
知道browserify/request有什么问题吗?
最佳答案
看起来这是 elliptic 的问题,它是 browserify 的一个依赖项。见 https://github.com/indutny/elliptic/issues/30
希望这会很快得到解决。
编辑:这实际上可能是 browserify 的问题。我会尝试恢复到 8.1.2,看看是否有帮助。
关于node.js - browserify watchify 产生错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28478311/