はじめてのNode-RED Node Context編

  • 1
    Like
  • 0
    Comment
More than 1 year has passed since last update.

基本的にはNode-REDのドキュメントベースで動かした内容を公開していこうと思います。

Node Contextを使う

Node-REDでは簡単なデータの永続化の方法としてNode Contextを使用する事ができます。
スコープを理解して上手く使っていけると良いでしょう。

context

この後の流れからするとlocal contextなんて呼んだ方がいいのかもしれません。
Node-REDが再起動するまでは値が残ります。使用できるスコープはNode内のみになります。

flow context

スコープはFlow内になりますので、Node間でデータを共有することができます。

global context

スコープは全てのNodeになりますので、Flow外のNodeとデータを共有することができます。

サンプル

わかりやすいようにサンプルを上げておきます。
https://github.com/tamaki-shingo/Node-RED_ContextSample.git

実行結果(Injectノードを何回かタップしてログを出してみてください)

14 Mar 00:06:04 - [info] Starting flows
14 Mar 00:06:04 - [info] Started flows
14 Mar 00:07:06 - [info] [function:node1] flow1-node1    count :1
14 Mar 00:07:06 - [info] [function:node1] flow1-node1    fcount:1
14 Mar 00:07:06 - [info] [function:node1] flow1-node1    gcount:1
14 Mar 00:07:06 - [info] [function:node2] flow1-node2    count :0
14 Mar 00:07:06 - [info] [function:node2] flow1-node2    fcount:1
14 Mar 00:07:06 - [info] [function:node2] flow1-node2    gcount:1
14 Mar 00:07:06 - [info] [function:node1] Subflow1-node2 count :0
14 Mar 00:07:06 - [info] [function:node1] Subflow1-node2 fcount:0
14 Mar 00:07:06 - [info] [function:node1] Subflow1-node2 gcount:1
14 Mar 00:07:09 - [info] [function:node1] flow1-node1    count :2
14 Mar 00:07:09 - [info] [function:node1] flow1-node1    fcount:2
14 Mar 00:07:09 - [info] [function:node1] flow1-node1    gcount:2
14 Mar 00:07:09 - [info] [function:node2] flow1-node2    count :0
14 Mar 00:07:09 - [info] [function:node2] flow1-node2    fcount:2
14 Mar 00:07:09 - [info] [function:node2] flow1-node2    gcount:2
14 Mar 00:07:09 - [info] [function:node1] Subflow1-node2 count :0
14 Mar 00:07:09 - [info] [function:node1] Subflow1-node2 fcount:0
14 Mar 00:07:09 - [info] [function:node1] Subflow1-node2 gcount:2
14 Mar 00:07:10 - [info] [function:node1] flow1-node1    count :3
14 Mar 00:07:10 - [info] [function:node1] flow1-node1    fcount:3
14 Mar 00:07:10 - [info] [function:node1] flow1-node1    gcount:3
14 Mar 00:07:10 - [info] [function:node2] flow1-node2    count :0
14 Mar 00:07:10 - [info] [function:node2] flow1-node2    fcount:3
14 Mar 00:07:10 - [info] [function:node2] flow1-node2    gcount:3
14 Mar 00:07:10 - [info] [function:node1] Subflow1-node2 count :0
14 Mar 00:07:10 - [info] [function:node1] Subflow1-node2 fcount:0
14 Mar 00:07:10 - [info] [function:node1] Subflow1-node2 gcount:3