Javascript 从gs以js中的全局变量形式传递对象

Javascript 从gs以js中的全局变量形式传递对象,javascript,google-apps-script,web-applications,global-variables,Javascript,Google Apps Script,Web Applications,Global Variables,我正在使用GoogleApps脚本构建一个web应用程序。 我在谷歌应用程序脚本中有一个函数: function getPalette(){ var ss = SpreadsheetApp.openByUrl(url); var ws_palette = ss.getSheetByName("palette"); var palette_data = ws_palette.getRange(2,1,1,1).getValue(); var palette =

我正在使用GoogleApps脚本构建一个web应用程序。 我在谷歌应用程序脚本中有一个函数:

function getPalette(){
  var ss = SpreadsheetApp.openByUrl(url);
  var ws_palette = ss.getSheetByName("palette");
  var palette_data = ws_palette.getRange(2,1,1,1).getValue();
  var palette = JSON.parse(palette_data.replace(/'/g, '"'));
  return palette;
}
我想将这个
调色板
对象作为全局变量传递给javascript.html

我该怎么做?非常感谢

可以从html/javascript并排访问应用程序脚本端变量 Scriptlet允许您使用
运行任何应用程序脚本代码,或使用
html
javascript
部分或您的Web应用程序中的
code.gs
访问任何变量

访问全局变量的示例:

代码.gs

javascript.html


console.log();
重要提示:


Apps Script Scriptlet仅在通过创建和评估模板而不是直接创建输出返回html内容时才起作用。

请添加更多详细信息,gs是什么?您所说的“通用”变量是什么意思?@TheMaster意味着我可以在javascript中任何地方的每个函数中使用它file@GwenYang还不清楚。Js文件或gs文件中的任何地方?到处都是什么意思?你试过模板和google.script.run吗?这些不令人满意吗?如果是这样的话,为什么?你说的是像
code.gs
文件一样位于同一项目中的
html
文件吗?谢谢!我认为这非常接近。我使用了
函数include_JS(){return HtmlService.createHtmlOutputFromFile(“Javascript”).getContent();}
,并将问题中的函数放在.gs文件中。然后
constpalete=getpalete()。然后在Javascript.html中,我使用了
let-palete=
它不起作用。请阅读我回答中的最后一句话:创建并评估模板,而不是直接创建输出,因此:
createTemplateFromFile(“Javascript”).evaluate()而不是
createHtmlOutFromFile(“Javascript”)
const globalVar = "I am global";

function doGet() {
  return HtmlService.createTemplateFromFile("javascript").evaluate();
}
<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
  </head>
  <body>
    <script>
    console.log(<?= globalVar ?>);
    </script>
  </body>
</html>