Node.io没有抛出错误?

时间:2013-01-20 17:30:55

标签: node.js node.io

我注意到node.io没有抛出与nodejs相比的任何错误,如果有错误的话。不知道为什么。例如:

运行此脚本包含错误的' Util2'与节点。

var Util = require('./lib/util.js');

console.log(Util2.parseFloat('$123.00'));

将抛出错误:

console.log(Util2.parseFloat('$123.00'));
        ^
ReferenceError: Util2 is not defined.

但是,使用具有完全相同拼写错误的node.io运行此脚本不会引发任何错误。

var nodeio = require('node.io');
var Util = require('./lib/util.js');

exports.job = new nodeio.Job({
    input: false,
    run: function () {
        console.log(Util2.parseFloat('$123.00'));
    }
});

不确定node.io是否会抑制错误消息,因为没有错误消息很难调试。任何解决方案?

1 个答案:

答案 0 :(得分:1)

感谢node.io chriso花时间回答这个问题。这是解决方案:

语法错误应该被过滤掉,但是现在你有两个选择

exports.job = new nodeio.Job({
    input: false,
    run: function () {
        console.log(Util2.parseFloat('$123.00'));
    }
  , fail: function (input, err) {
        // handle error here
    }
}); 
or

exports.job = new nodeio.Job({
    input: false,
    run: function () {
        try {
            console.log(Util2.parseFloat('$123.00'));
        } catch (e) {
            //Handle the error here
        }
    }
});

Full Answer