GASのincludeでスクリプトレットが使えない!?(htmlファイル)

GASの覚書です。

目次

GASのスクリプトレットとは?

スクリプトレットとは、HTML内でGoogle Apps Scriptのコードを動的に実行するためのものです。JSのコードをHTML内に直接記述することもできます。

GASのincludeでスクリプトレットが使えない!?(htmlファイル)

GASでスクリプトレットを使いたいのに、そのままコードが表示されてしまう症状に一時悩みました。

原因はポップアップの方にありました。

// const html = HtmlService.createHtmlOutputFromFile('popup.html')
const html = HtmlService.createTemplateFromFile('popup.html').evaluate()
      .setWidth(300)
      .setHeight(500);

createHtmlOutputFromFilecreateTemplateFromFile の2つの方法がありますが、スクリプトレットや include 関数を使用する場合は createTemplateFromFile を使って .evaluate() を呼び出す必要があります。

ポイントとしては

  • createHtmlOutputFromFile: 単にHTMLをそのまま表示する。
  • createTemplateFromFile: Google Apps Scriptと連携するためのテンプレートを作成する。

JSやCSS、SVGを外部ファイル化する可能性もあるため、 createTemplateFromFile を使った方が不要なトラブルに巻き込まれない気がしました。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次