Functionノードを使う(その5)
前回 まででFunctionノードのサンプルをひと通り見て満足していたのですが、そういえば、1箇所だけ触っていない設定があったことを思い出しました。設定プロパティの「 モジュール 」です。 Functionノードの ドキュメント によると、 functionExternalModules オプションを使うとsettings.js上でいちいちrequire()しなくても外部モジュールが使えるとのこと。settings.jsを確認したところデフォルトで有効化されていました。それを先に言えよ。 /** Allow the Function node to load additional npm modules directly */ functionExternalModules: true, というわけで、早速動作確認します。 その3の記事 で使ったaxiosで試してみます。前提条件として「 npm install axios 」コマンドでaxiosをインストールしておきます。続いて設定タブでモジュールにaxiosを追加します。 この設定は「 const axios = require("axios") 」みたいなことをやってくれているということなのだと思います。続いて、コードタブに以下のように書きます。いきなりaxios.get()を呼び出せるのがポイントです。 フローを実行するとresponseが出力されます。 まとめ 今回利用した方法だと特定のFunctionノードでのみ外部モジュールが利用可能になりますが、 その3の記事 で確認したsettings.jsファイルの functionGlobalContext でrequire()する方法だと全Functionノードで外部モジュールが利用可能になるということなのでしょう。状況によって使い分けすれば良さそうです。Functionノードについてはこんなもんですかね。