別のJavaScriptファイルの関数を読み込む方法

kintoneでカスタマイズをしていると、一つのJSファイルだけだと行数が増えすぎて複数ファイルに分けたくなるかと思います。

例えば、Aファイルには汎用性の高い共通関数系をまとめて、Bファイルではそれらを呼び出す処理をするetcetc…

 

こういったときの方法として、window オブジェクトのプロパティとしてグローバル変数を定義し、それを呼び出す、という方法があります。下記に例を記載します。

 

■Aファイル(汎用性の高い共通関数をまとめたファイル)

  1. (function() {
  2.     “use strict”;
  3.     //エスケープ
  4.     function escapeHtml(str) {
  5.         //処理
  6.         …
  7.     }
  8.     window.hogeLib= window.hogeLib|| {};
  9.     window.hogeLib.escapeHtml = escapeHtml;
  10. })();

これでAファイルのescapeHtml()関数をグローバル変数に定義できました。あとはBファイルから呼び出します。

 

■Bファイル(通常処理のファイル)

  1. (function() {
  2.     “use strict”;
  3.     kintone.events.on(‘app.record.index.show’, function(event) {
  4.         var html_str = event.record[“rich_text”][“value”];
  5.         var hoge_escape = window.hogeLib.escapeHtml(html_str);//AファイルのescapeHtmlを呼び出すときの処理
  6.         alert(hoge_escape);//エスケープされた後の文字列がアラートに表示される。
  7.     });
  8. })();

 

以上です。複雑な処理になればなるほど便利ですが、グローバル汚染にだけはお気を付けくださいm(_ _)m

https://github.com/kintone/plugin-sdkで公開されているサンプルプラグインのソースコードでも

一部使用されているので参考になるかもしれません。

 

■参考HP:JavaScript : window オブジェクトのプロパティとしてグローバル変数を定義する

http://logicalerror.seesaa.net/article/139234483.html