【发布时间】:2022-01-18 13:38:01
【问题描述】:
我正在尝试创建一个创建 2 个变量并根据条件递增每个变量的脚本。通过与服务器的 MQTT 连接实时接收实际 NetWeight,并以折线图显示值。当这个值大于或等于 0.500 时,我必须将该项目条目计为“ok”项目,如果它低于 0.500,我应该将其计为“under”项目。问题是像我在代码中那样初始化这些变量,每次收到新值时将它们重置为 0,使计数器在满足条件时仅从 0 变为 1,而在条件不满足时返回 0遇见了。所以从逻辑上讲,这个脚本有效,但它只完成了一半的工作。我尝试了许多不同的方法来解决这个问题,但似乎无法获得所需的结果。我还查看了 Node-RED 论坛,但网上几乎没有关于此工具的有用信息。
var ok = 0;
var under = 0;
var scartoTotale;
var actualNetWeight = msg.payload.actualNetWeight.value;
var numeroPezziTot = msg.payload.identity;
if(actualNetWeight >= 0.500)
{
ok++;
}
else
{
under++;
scartoTotale += (0.500 - actualNetWeight);
}
msg.payload.ok = ok;
msg.payload.under = under;
msg.payload.scartoTotale = scartoTotale;
return msg;
“msg”是 Node-RED 的标准,有效负载是我从服务器获得的响应,我从中接收数据。
【问题讨论】:
标签: javascript mqtt node-red