在应用程序脚本中使用 <?= ?> 传递参数时,HtmlService 不起作用

我已经完成了一些应用脚本,可以将行和列变成嵌套数组。数组很好,但是当我使用 HtmlService 将其显示为 HTML 时,脚本不起作用。我尝试了几次并更改了变量,但仍然无法正常工作。这是我在 App Script 中的第一个脚本,仍在学习中。

Code.gs

function displayTableInHTML() {
  const ss = Spreadsheetapp.getactiveSpreadsheet();
  const absenteeismTab = ss.getSheetByName("EmailOutput");
  const absDetail = absenteeismTab.getRange(5,2,10000,6).getvalues();
  const finalAbs = [];
  for (let x = 0; x < absDetail.length; x++) {
    if (absDetail[x][0].length !== 0){
      finalAbs.push(absDetail[x]);
    }
  };

  const htmlTemplate = HtmlService.createTemplateFromFile("index");
  htmlTemplate.finalAbs = finalAbs;
}

index.html

<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
  </head>
  <body>
    <h1><?= finalAbs ?></h1>
  </body>
</html>

当我运行 html 时,它给了我一个错误。

错误:

在应用程序脚本中使用 <?= ?> 传递参数时,HtmlService 不起作用

sandzheng 回答:在应用程序脚本中使用 <?= ?> 传递参数时,HtmlService 不起作用

function doGet(e) {
  return displayTableInHTML();
}

function displayTableInHTML() {
  const ss = SpreadsheetApp.getActiveSpreadsheet();
  const absenteeismTab = ss.getSheetByName("EmailOutput");
  const absDetail = absenteeismTab.getRange(5,2,10000,6).getValues();
  const finalAbs = [];
  for (let x = 0; x < absDetail.length; x++) {
    if (absDetail[x][0].length !== 0){
      finalAbs.push(absDetail[x]);
    }
  };

  const htmlTemplate = HtmlService.createTemplateFromFile("index");
  htmlTemplate.finalAbs = finalAbs;
  return htmlTemplate.evaluate();
}
本文链接:https://www.f2er.com/2587.html

大家都在问