ライブラリは、他のスクリプトで関数を再利用できるスクリプト プロジェクトです。
図書館を利用する
プロジェクトにライブラリを含めるには、少なくともビューレベルが必要です。 必要ありません。リンクするライブラリの作成者ではない場合 作成者に連絡してアクセス権をリクエストします
含めるライブラリのスクリプト ID が必要です。新しい [プロジェクトの設定] でスクリプト ID を確認できます。
ページ。スクリプト プロジェクトにライブラリを追加する
- Apps Script エディタの左側にある [ライブラリ] の横で、[ ライブラリ 。
- [スクリプト ID] で、フィールドに、ライブラリのスクリプト ID を貼り付けます。
- [Look up] をクリックします。
- [Version] プルダウンをクリックして、ライブラリのバージョンを選択します。 使用できます。
- デフォルトの「Identifier」がトレーニング済みのデータを
使用します。これは、スクリプトで使用される名前で、
ご覧ください。たとえば、
Test
に設定すると、次のようになります。Test.libraryMethod()
のように、そのライブラリのメソッドを呼び出します。 - [追加] をクリックします。
ライブラリを使用する
デフォルトのサービスの場合と同様に、インクルードされているライブラリを使用します。対象
たとえば、ライブラリの識別子が Test
の場合は、次のように入力します。
Test
の直後にピリオドを付けると、ライブラリ内のメソッドのリストが表示されます。
含まれているライブラリのリファレンス ドキュメントは、次の手順で開くことができます。 手順は次のとおりです。
スクリプト エディタの左側で、ライブラリ名の横にあるその他アイコン
>新しいタブで開く。ライブラリを削除する
スクリプト エディタの左側で、ライブラリ名の横にあるその他アイコン
>削除 >ライブラリの削除。ライブラリを更新する
ライブラリのバージョンを変更したり、ライブラリの識別子を更新したりできます。
- エディタ左側の [ライブラリ] セクションで図書館名をクリックします。
- 変更を加えて [保存] をクリックします。
ライブラリを作成して共有する
スクリプト プロジェクトをライブラリとして使用、共有する手順は次のとおりです。
- バージョニングされた Deployment を作成する 使用できます。
- ライブラリのすべての潜在的ユーザーと、ビューレベル以上のアクセス権を共有します。
- 該当するユーザーにスクリプト ID を付与してください。ID は、プロジェクト 設定 ページ。
ベスト プラクティス
ライブラリを作成する際は、次のガイドラインに従ってください。
- プロジェクトにはわかりやすい名前を付けてください。 他のライブラリがライブラリに含まれている場合、デフォルトの識別子が使用されます。
- スクリプトの 1 つ以上のメソッドを非表示にしたい場合(または
メソッド名を
使用します。たとえば、
myPrivateMethod_()
です。 - ライブラリのユーザーには、列挙可能なグローバル プロパティのみが表示されます。これには、
宣言、
var
を使用して関数外で作成された変数、明示的に設定されたプロパティ 設定されます。たとえば、enumerable
をfalse
に設定したObject.defineProperty()
です。 は、ライブラリで使用できるシンボルを作成しますが、ユーザーはこのシンボルにアクセスできません。 ライブラリのユーザーがスクリプト エディタの予測入力と 使用する場合は、JSDoc 形式のドキュメント、 ドキュメントをご覧ください。次の例をご覧ください。
/** * Raises a number to the given power, and returns the result. * * @param {number} base the number we're raising to a power * @param {number} exp the exponent we're raising the base to * @return {number} the result of the exponential calculation */ function power(base, exp) { ... }
リソースのスコープ設定
ライブラリを扱う場合、次の 2 種類のリソースを使用します。 共有されません。共有リソースとは、ライブラリとそれを含むリソースの両方が スクリプトには、リソースの同じインスタンスへのアクセスが組み込まれています。「 次の図に、共有リソースを示します。 ユーザー プロパティ:
非共有リソースとは、ライブラリとインクルード スクリプトの両方に そのリソースのインスタンスにのみアクセスが許可されます。ただし、ライブラリを使用すれば、 リソースへのアクセスを提供する明示的な関数を持たせることで、 操作できます。この例は、この例に含める関数を スクリプト プロパティを公開します。
function getLibraryProperty(key) {
return ScriptProperties.getProperty(key);
}
次の図は、共有されていないリソースについて、 スクリプトのプロパティ:
次の表に、共有リソースと非共有リソースの一覧を示します。
リソース | 共有中* | 未共有** | メモ |
---|---|---|---|
ロック | 同じインスタンスは、作成されたプロジェクトを含むすべてのスクリプトに ライブラリです。 | ||
スクリプト プロパティ | 同じインスタンスは、作成されたプロジェクトを含むすべてのスクリプトに ライブラリです。 | ||
キャッシュ | 同じインスタンスは、作成されたプロジェクトを含むすべてのスクリプトに ライブラリです。 | ||
トリガー | ライブラリで作成された単純なトリガーが、インクルードによってトリガーされない 使用します。 | ||
ScriptApp | |||
UiApp | |||
ユーザー プロパティ | |||
ロガーと実行の文字起こし | |||
Google サイト、スプレッドシート、その他のコンテナ | getActive() を呼び出すと、指定したオブジェクトのコンテナが返されます。
あります。 |
||
MailApp と GmailApp | |||
* つまり、ライブラリには、関数の固有のインスタンスが
スクリプトによって作成されたものが代わりに使用されます
呼び出すことができます。
** これは、ライブラリがリソース/機能の独自のインスタンスを持つことを意味します。 ライブラリを使用するすべてのスクリプトが 同じインスタンスです |
ライブラリをテストする
ライブラリをテストするには、ヘッド デプロイを使用します。編集者レベルの権限を持つユーザー ヘッドデプロイを使用できます
ライブラリをデバッグする
ライブラリを含むプロジェクトでデバッガを使用すると、 含まれているライブラリの関数にステップインできます。コードは 適切なバージョンに配置します。