使用Javascript的布尔错误

时间:2016-11-07 16:01:02

标签: debugging node-red

拥有此代码:

function checkIsNotOverHeating(context, surchauffe, offset, topic, node){
    let msg = null;
    let overheating;

    overheating = false;

    if(checkTemperatureWithOffset(context.get("temperatureInt"), offset, surchauffe, "-") === 1){
        // Overheating
        overheating = true;
        msg = createMessageOverheat(topic);
    }

    node.error(overheating)
    if(context.get("overheating") !== overheating) context.set("overheating", overheating);

    return msg;
}

每个node.error都会在Node中输出参数中的值。我无法理解为什么,但是它会接受布尔值true,而不是false,如图所示:

enter image description here

我正在使用NodeRED,正如您所看到的,代码很简单。我的功能每次都被触发。

编辑:不要处理-1,它只会显示2值的变化

1 个答案:

答案 0 :(得分:1)

这似乎是node.error()代码中的一个错误,可以试试这个:

node.error(' ' + overheating);

编辑:

已提交修复:

https://github.com/node-red/node-red/pull/1037