如何使用 HTMLService 从 gs 文件调用函数?

How to call functions from gs file using HTMLService?

这让我抓狂。我已经为我的 Google 网络应用程序编写了一个 html 页面,该页面具有在 .gs 文件中编写的功能。我要做的就是从 .html 文件中调用 .gs 文件中的函数。然而,我尝试过的每一种方法似乎都不奏效。我知道我的函数有效,因为当我只运行它们时它们有效。我缺少如何将 .gs 文件连接到 .html 文件。

我的 .gs 文件看起来像这样:

function doGet() {

  return HtmlService.createHtmlOutputFromFile('index');
}

function test()
{
  //getFormattedSpreadsheet("1xPDJJfCqWb2igug3NCFmJJ5nO49U6CK8mLwtaD727AY", "17qcsYh8M-cOwTg9K7sqqnKm0pGgEo6r7x1PguRf9Jk8", "Select School");
  archiveSheet("1wTNing5LAOYHbscQ_DTktIxvWcyc6gw6ZNTvAJDtkTo", "1ugNP0Pp97tnRKHLHa50j-QKx-4ynCfg3zHxtJTayiVk");

}

我需要在单击按钮时调用该函数,我尝试了类似的方法(甚至没有 google.script.run 部分):

<button onclick="google.script.run(test())">Full</button>

但我无法让我的按钮真正调用脚本。我读过您也可以通过将脚本放在 function() 标记中来调用脚本来运行,但我需要它在单击而不是加载时运行。也许我只是不明白 .gs 和 .html 文件之间的 link。它们是单独的文件,但在同一个 Google 网络应用程序项目中。

你的语法有点错误。你有:

<button onclick="google.script.run(test())">Full</button>

应该是:

<button onclick="google.script.run.test()">Full</button>

你在应该有一个点的地方有一个括号。

Google Documentation - Google Script Run API