这篇文章来结合 node-red 创建一条 flow 并进行说明,第一个示例主要用到 debug、inject 和 function 类型的 node。
以容器方式启动 node-red 服务,启动命令如下所示:
启动命令:docker run -it -p 1880:1880 -v $pwd/data:/data -e tz=asia/shanghai --name nodered -d nodered/node-red:1.0.4
结果确认
步骤 1: 添加一个 inject 的 node
拖动一个 inject 节点至 flow 1 的编辑页面上
步骤 2: 添加一个 debug 的 node
同样添加一个 debug 的 node
步骤 3: 添加连线
点击 inject 类型 node 的右侧连接点,将其与 debug 类型 node 的左侧节点进行关联,这样一个最为简单的示例就完成了
步骤 4: 执行 deploy
修改需要执行 deploy 操作才能生效,点击 deploy 按钮即可,deploy 执行完毕之后,如果没有新的修改内容,会如下图一样显示为灰色。
步骤 5: 结果确认
部署之后点击 inject 类型的 node 的左侧按钮即可手动发起触发,这个效果是显示当前的时间信息,点击两次之后,选择 debug messages,可以从右侧边脸看到如下结果:
点击数字类型的时间信息,也可以进行转换
在接下来的示例中我们添加 function 类型的 node 进行时间转换:
步骤 1: 添加一个 function 类型的节点
双击添加的 function 类型的 node,进行如下设定
代码说明:在前面的文章中介绍过 function 类型的 node 中可以执行 javascript 脚本,这里就是进行了一个简单的时间的转换,转换为字符类型进行显示
// 使用 payload 创建日期对象 var date = new date(msg.payload);
// 转换 payload 的时间格式 msg.payload = date.tostring();
// msg 中的 payload 的格式已经转换 return msg;
步骤 2: 删除之前的连线,重新连接
步骤 3: 执行 deploy 操作
注意如果不执行 deploy 操作,虽然已经是使用了 function 类型的 node 在中间进行转换,但是没有生效,此时手动触发日期格式仍然跟之前一样。
点击 deploy 进行部署
步骤 4: 确认结果
部署之后,从结果中即可确认到变更之后的时间信息了
参考内容
来源:
nodered 澳门人威尼斯3966官网:
noderedgithub:
nodered 英文社区:
nodered 中文社区:https://www.iotschool.com/topics/node81
nodered 中文社区 qq 群:8604461