node.js - browserify watchify 产生错误

标签 node.js gulp browserify node-request

我正在使用 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/

相关文章:

node.js - Nodejs/mongodb - 检查用户是否具有管理员权限(基于 token 的身份验证)

javascript - .jshintignore 中的相对路径通配符不起作用?

node.js - browserify后客户端 Node 模块不起作用

browserify - 为 Browserify 定义全局变量

javascript - 适用于多种环境的 Grunt 任务自动化

node.js - 我如何知道它是否在 lambda 内部运行?

javascript - gulp.js 插件应该在 package.json 里面吗?

npm - 带有browserify的多个 bundle ,在外部使用模块

reactjs - 使用 Gulp、Browserify 和 Babel 构建 React 组件

node.js - Slack API 上传图像或视频