如何在 Node-Red Dashboard 节点中编辑特定代码

How to edit specific code in a Node-Red Dashboard node

我有一个具有 140 个属性的对象。它包含一些配置设置,我想让用户轻松更改它们。

我想生成一个将这些属性中的每一个都作为一个元素的表单,就像这个仪表板 ui_form:

但是这些元素中的每一个都需要我设置名称、标签等,所以我尝试自动化这个过程并生成了一个元素数组如下:

elements = [
    {"label":"Valve field count",
    "value":"valve_field_count",
    "type":"number",
    "required":false,
    "rows":null},
    {"label":"Valve fertilizer count",
    "value":"valve_fertilizer_count",
    "type":"number",
    "required":false,
    "rows":null},
    //etc
]

在看到表单节点上的信息(在右侧的导航中)后,我将其格式化为这种格式。

既然我已经为表单设置了一些设置,我该如何将其插入表单?

在我朋友的帮助下解决了:

  1. 将节点导出为 JSON。 Select 节点,转到菜单 -> 导出 -> JSON 选项卡,然后复制粘贴到某处或下载。
  2. 该节点是一个对象数组。其中一个对象的类型为“ui_form”。在此对象中,编辑 属性“选项”,并将数组替换为我自己生成的数组(在我的问题中称为元素)。
  3. 在任何程序中编辑 JSON 文件后(确保将其另存为 .json),将其导入回 Node-Red。 Node-Red 会抱怨你正在导入你已经拥有的东西,但你可以忽略它。
  4. 然后您可以将任何值输入节点。