Google 使用 html 服务显示应用程序脚本新闻(公告)

Google apps script news (announcement) display using html service

我正在尝试从 Google 网站的公告页面检索帖子并使用应用程序脚本小工具显示。

HTML 页

<html>
  <body>
    <div>
<?
 var site = SitesApp.getSite("google.com", "smgeneral");
 var page = site.getChildByName("news");
 var announcements = page.getAnnouncements({ start: 0, max: 1, includeDrafts: false, includeDeleted: false});

   for (var i = 0; i < announcements.length; i++) { ?>
    <div><?= announcements[i].getHtmlContent(); ?></div>
<? } ?>

     </div>
  </body>
</html>

脚本:

function doGet() {
  return HtmlService
      .createTemplateFromFile('Index')
      .evaluate()
      .setSandboxMode(HtmlService.SandboxMode.IFRAME);
}

输出:

<table class='sites-layout-name-one-column sites-layout-hbox' cellspacing='0'><tbody><tr>...........</td></tr></tbody></table>

当我在页面中嵌入脚本时,它显示 html 代码。我怎样才能显示格式化的内容? 请帮忙。谢谢。

不是预加载,而是在页面加载后将其作为脚本加载:

在HTML中:

<div id="contentHere"></div>
<script>
function getNews(){
  google.script.run.withSuccessHandler(updateDiv).getUnreadEmails();
}

function updateDiv( content ){
  document.getElementById('contentHere').innerHTML(content);
}

getNews();
</script>

在code.gs中:

var site = SitesApp.getSite("google.com", "smgeneral");
var page = site.getChildByName("news");
var announcements = page.getAnnouncements({ start: 0, max: 1, includeDrafts: false, includeDeleted: false});

var html = "";
for (var i = 0; i < announcements.length; i++) { 
  html += <div><?= announcements[i].getHtmlContent(); ?></div>;
}

return html;