概要
Node-REDのfunctionノードで、jsライブラリ(node-module)を読み込んで使いたい場面が出てきました。
functionノードで直接”require”できないので苦戦し、なんとか利用できたので備忘録として残します。
方法
##1. ターミナルを開き利用したいライブラリをnpmでインストール
このとき、Node-REDのシステムファイルがある「.node-red」にインストールします。
cd ~./.node-red
npm install インストールしたいライブラリ名
例えば、fs-extraを読み込みたい場合は次のコマンドです。
npm install fs-extra
##2. settings.jsを編集
settings.jsは次の場所にあります。(windowsの場合)
C:\Users\ユーザ名\.node-red\settings.js
例)fs-extraを読み込む場合
settings.js
functionGlobalContext: {
fs:require('fs-extra'), // <--追記
// os:require('os'),
// jfive:require("johnny-five"),
// j5board:require("johnny-five").Board({repl:false})
},
##3. functionノードに読み込み
functionノードの記述例
functionノード
var fs = new global.get(`fs`);
return msg;