首页 文章

如何在meteor.startup上调试使用node-inspector

提问于
浏览
0

我尝试使用node-inspector调试meteor .

/ server目录下有两个'.js'文件:

main.js

Meteor.startup(function(){
    var a = 1;
    var  b =2;
    console.log(a+b);
});

test.js

Meteor.methods({
    hello:function(){
        var c = 3 ;
        var d = 4;
    }
});

首先,我设置环境 NODE_OPTIONS='--debug' 并运行 meteor . 在另一个CMD运行 node-inspector

我在chrome处打开 localhost:8080/debug?port=5858 并找到文件"app/server/main.js"并在3行设置调试标志 . 像这样:

(function(Npm, Assets){(function(){Meteor.startup(function(){
    var a = 1;
    var  b =2;  //debug at here
    console.log(a+b);
});

})();

})

但没有任何事情发生,在cmd, console.log(a+b); 的结果已经打印出来了 . 另一方面,如果我在"app/server/test.js"中设置调试标志并在 localhost:3000 的控制台上运行 Meteor.call("hello") ,那么断点可以正常工作 .

在上面,我无法调试 Meteor.startup .

接下来,我尝试使用 NODE_OPTIONS='--debug-brk'

我重新运行 meteor 并刷新 localhost:8080/debug?port=5858

它会打破

(function (exports, require, module, __filename, __dirname) { process.argv.splice(2, 0, 'program.json');

然后我再次按 F10 ,调试标志似乎没有发生在 app/server/main.js . 同时,如果在test.js上调试并在客户端chrome处调用 Meteor.call ,则断点也可以正常工作 .

如何在函数 Meteor.startup(function(){...}) 上调试

我忘记的步骤是什么?

1 回答

相关问题