所以我只是要掌握節點紅色,我需要創建一個條件全局函數。節點紅 - 需要一個數字值的多輸入功能
我設置的數值兩個獨立global.payloads 0或1
我需要的是現在的情況發生,如果global.payload爲值1什麼然後按照這個流程,如果等於值0,然後按照這個。
我只是對函數語句的語法有點困惑。任何幫助感激地讚賞。
所以我只是要掌握節點紅色,我需要創建一個條件全局函數。節點紅 - 需要一個數字值的多輸入功能
我設置的數值兩個獨立global.payloads 0或1
我需要的是現在的情況發生,如果global.payload爲值1什麼然後按照這個流程,如果等於值0,然後按照這個。
我只是對函數語句的語法有點困惑。任何幫助感激地讚賞。
既然你不接受目前的答案,以爲我會試試這個。 我認爲這是你需要處理來自兩個獨立的全球背景的輸入。我在這裏模擬他們有兩個單獨的inject
節點證明:
的checkconf
inject
節點發出1或0同爲meshstatus
節點。用您的真實輸入替換這些注入節點。真正的工作是在函數內部完成:
var c = context.get('c') || 0; // initialize variables
var m = context.get('m') || 0;
if (msg.topic == "checkconf") // update context based on topic of input
{
c = {payload: msg.payload};
context.set("c", c); // save last value in local context
}
if (msg.topic == 'meshstatus') // same here
{
m = {payload: msg.payload};
context.set('m', m); // save last value in local context
}
// now do the test to see if both inputs are triggered...
if (m.payload == 1) // check last value of meshstatus first
{
if (c.payload == 1) // now check last value of checkconf
return {topic:'value', payload: "YES"};
}
else
return {topic:'value', payload: "NO"};
一定要設置的不管你作爲輸入,所以if
語句可以在兩個輸入區分使用的「主題」屬性。祝你好運!
嗨,感謝您的反饋...我實際上有2個global.payloads ...一個叫global.payload(checkconf),另一個叫global.payload(meshstatus)我需要評估一個條件,如果全局.payload(meshstatus)設置爲1,然後檢查global.payload(checkconf)是否也等於1 ..如果是,那麼做這個,如果沒有,那麼做這個..我一直在嘗試我的大腦在結試圖解決這個問題:-S – blupacetek
也許我下面的新答案更好地反映了你想要完成的事情,因爲你的評論是你正在使用兩個獨立的全局有效載荷。 – TomServo