节点红色。从对象数组获取项目

时间:2019-04-30 13:59:46

标签: javascript arrays node.js node-red

我正在使用节点红色程序,并且我使用一个OPCUA节点,该节点在有效载荷中返回对象数组。

enter image description here

我需要获取对象的一些变量,例如项目的nodeId;我尝试使用下一种格式:

var newMsg = { payload: msg.payload[0].item.nodeId };
return newMsg;

但是它不起作用。我可以看到错误“错误:NodeId中的invalid identifierType:2” 我尝试了很多格式,但找不到正确的方法。

您知道如何获取对象数组的数据吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

使用较新版本的Node-RED(v0.19 iirc之后),您可以将鼠标悬停并单击弹出的选项,从调试侧边栏获取值的路径。

enter image description here

>_图标将路径复制到对象(相对于调试节点中的选择,因此通常为msg.payload)。在示例payload[0].foo中。

这可以在功能节点中用作msg.payload[0].foo