刚想学习Node-Red,在处理消息方面很吃力。
我有一个查询mysql数据库的节点,并返回一个包含objects.payload数组的有效载荷。
我想把这些值传给一个dashboard图节点. 然而我相信我需要传给它一个数组,形式为
payload: array[64]
[0...9]
[0: 22.2]
.
.
等。
我试过一个函数--
var outmsg = [];
for (var w in msg)
{
outmsg.push(w.Temperature);
}
return {payload: outmsg, topic: msg.length};
显然这是完全错误的做法......谁能帮帮我,请问?
ps. 对不起,如果这是一个重复的东西回答别的地方。我做了谷歌,但没有发现任何东西。
最好的做法是不要重新创建消息,但如果可能的话,要把输入的消息传递出去,所以下面的做法比较好。
for (var i in msg.payload) {
msg.payload[i] = msg.payload[i].time
}
return msg;
经过一番周折,我找到了答案... ...
var inmsg = {payload: msg.payload};
var outmsg = [];
for (var w in inmsg.payload)
{
outmsg.push(inmsg.payload[w].Temperature);
}
return {payload: outmsg, topic: inmsg.length};