node-red教程5函数节点.docx

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第 第 PAGE 1 页 共 NUMPAGES 1 页 node-red教程5函数节点 node-red教程5函数节点 5.1 函数控件介绍 函数控件在node-red中是重点,也是难点。由于其功能强?,能做的事情很多,所以它重要;事实上,函数控件中的“函数”?词,翻译为中?“功能”也是可以的。但是,函数是需要直接编写代码的,所以说也是难点。 assignedto节点帮助 ?个JavaScript函数块,?来处理节点接收到的消息。 这些消息作为?个名为msg的JavaScript对象传?。 支持英文 按照惯例,它会有?个msg.payload属性,包含消息正?。 函数被期望返回?个message对象(或多个消息对象),但是可以选择不返回任何东西以阻?流。 详细信息 hesitate 有关编写函数的更多信息,请参见在线?档 口语英语 发送消息 这个函数既可以使?“return”向流中的下?个节点传递消息,也可以调?node.nd(messages)。 它可以返回或是发送 xiewen ?个单?的消息对象——传递给连接到第?个输出的节点 ?组消息对象——传递给连接到相应输出的节点 如果数组的任何元素本?都是?组消息,那么多条消息就会被发送到相应的输出。 如果返回null,?论是单独还是作为数组的元素,都不会传递任何消息。 ?志和错误处理 要记录任何信息或报告错误,可以使?以下功能: node.log(Log message) node.warn(Warning) (Error) Catch节点也可以?来处理错误。为了调?Catch节点,将msg作为第?个参数传递给: 5.2 使?函数控件实现多个输出 前边使?switch控件时我们已经实现了根据不同的条件,来实现多个输出。Switch控件是?种功能控件,?函数控件也是功能控件。甚?可以说,函数控件可以通过编程实现所有功能控件的功能。接下来,我们尝试?函数控件实现多个输出。 5.2.1 最简单的函数控件?法 拖??个inject、function与debug,?需任何修改,直接?线连接三个节点。 部署,并点击inject的输?按钮,观察调试窗?。可以看到debug节点打印的调试信息。 你可能会说,什么嘛,不加这个函数节点,直接连接inject与debug节点,不也是这个效果嘛!这个函数节点有什么?? 它的作?就是,把消息原封不动输出。原封不动的输出,也是?种功能,最简单的功能。 我们双击函数节点,来看?下?边的内容。 只有??代码,return msg,返回消息。 账簿设置情况 回过头来,看函数控件的说明信息。?来处理节点接收到的消息,消息作为?个名为msg的对象传?。可以使?“return”向下?个节点传递消息。也就是说,函数控件的输?时msg对象,输出也是msg对象。在输出之前,可以对msg对象进?处理。所谓对象,意思是这是?个msg实例,是具体的数据,不是抽象的,更不是msg跟异性朋友处对象。 既然可以原封不动返回msg,当然也可以不返回。只要把语句改为return null即可。Null的意思是空值,也可以说没有值。修改代码为: 重新部署,?论现在如何点击inject节点的输?按钮,debug节点都不会打印出任何消息了。 5.2.2 在函数节点中创建并返回多个消息 函数控件中,除了可以处理输?的msg对象以外,也可以??定义?些msg对象。另外,说明?件中,有介绍说function可以返回?个对象,或是?数组传递?组对象。我们先尝试??建??组对象并传递。 修改函数节点:取个合适的名称,添加如下代码,并把输出改为两路。 var msg1 = { payload:first out of output 1 }; var msg2 = { payload:cond out of output 1 }; var msg3 = { payload:third out of output 1 }; 上海中学生英语报 var msg4 = { payload:only message from output 2 }; ampl

文档评论(0)

183****2409 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档