LoginSignup
2

More than 5 years have passed since last update.

はじめてのNode-RED Node Context編

Last updated at Posted at 2016-03-13

基本的には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

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2