找回密码
 立即注册
搜索
查看: 4887|回复: 6

[流程系列] 在node-red中怎样实现一个固定输入的值循环输出两个不同的值

[复制链接]
jhbl 手机认证

6

主题

88

回帖

2614

积分

金牌会员

积分
2614
金钱
2520
HASS币
0
发表于 2021-10-12 16:01:33 | 显示全部楼层 |阅读模式
我想要在node-red中实现一个固定接收到的值循环输出两个不同的值。假设这个值是字符串"a",我想第一次msg.payload接收到字符串"a"输出的值是字符串"b",当msg.payload再一次接收到字符串"a"输出的值是字符串"c",……重复以上循环,请问我要怎样设置一个函数来实现?有大佬能指点下吗?
回复

使用道具 举报

8

主题

155

回帖

1282

积分

论坛技术达人

积分
1282
金钱
1109
HASS币
20
发表于 2021-10-12 16:41:46 | 显示全部楼层
弄个全局变量做计数器,然后奇偶判断下就可以了。
回复

使用道具 举报

7

主题

348

回帖

3542

积分

论坛元老

积分
3542
金钱
3187
HASS币
0
发表于 2021-10-12 17:07:10 | 显示全部楼层
函数挺简单啊,节点的话绕个循环连起来就行。

if (msg.payload == "a") msg.payload = "b";
else if (msg.payload == "b") msg.payload = "c";
else if (msg.payload == "c") msg.payload = "a";
return msg;


回复

使用道具 举报

jhbl 手机认证

6

主题

88

回帖

2614

积分

金牌会员

积分
2614
金钱
2520
HASS币
0
 楼主| 发表于 2021-10-12 18:09:42 | 显示全部楼层
yuyuye 发表于 2021-10-12 17:07
函数挺简单啊,节点的话绕个循环连起来就行。

if (msg.payload == "a") msg.payload = "b";

收到,我测试下,谢谢!
回复

使用道具 举报

jhbl 手机认证

6

主题

88

回帖

2614

积分

金牌会员

积分
2614
金钱
2520
HASS币
0
 楼主| 发表于 2021-10-12 18:10:47 | 显示全部楼层
wen_jxpx 发表于 2021-10-12 16:41
弄个全局变量做计数器,然后奇偶判断下就可以了。

大佬能具体点吗?先谢谢了!
回复

使用道具 举报

3

主题

72

回帖

521

积分

论坛积极会员

积分
521
金钱
446
HASS币
0
发表于 2021-10-12 23:47:37 来自手机 | 显示全部楼层
jhbl 发表于 2021-10-12 18:10
大佬能具体点吗?先谢谢了!

申明一个流变量或全局变量,flow.set("a",a),flow.get("a")   全局是global。
回复

使用道具 举报

jhbl 手机认证

6

主题

88

回帖

2614

积分

金牌会员

积分
2614
金钱
2520
HASS币
0
 楼主| 发表于 2021-10-13 07:30:23 | 显示全部楼层
mrjc0331 发表于 2021-10-12 23:47
申明一个流变量或全局变量,flow.set("a",a),flow.get("a")   全局是global。

学习了,感谢感谢!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian ( 晋ICP备17001384号-1 )

GMT+8, 2025-7-7 06:15 , Processed in 0.496206 second(s), 7 queries , MemCached On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表