我目前正在将使用弃用的UI服务的Google Apps脚本转换为HtmlService。
我使用以下代码创建了一个模态对话框(在电子表格容器绑定脚本中):
var htmlTemplate = HtmlService.createTemplateFromFile('testDialogue');
htmlTemplate = template.evaluate().setSandboxMode(HtmlService.SandboxMode.IFRAME);
SpreadsheetApp.getUi().showModalDialog(htmlTemplate, 'Test Dialogue');
对话框打开,但我需要修改其尺寸。
HtmlOutput对象有一个setHeight method,但似乎没有HtmlTemplate objects可用的方法。
我尝试在对象上使用这个方法,如下所示:
var htmlTemplate = HtmlService.createTemplateFromFile('testDialogue').setHeight(300);
但是这会产生这个错误:
TypeError:在对象HtmlTemplate中找不到函数setHeight
另外,我检查了SpreadsheetApp Ui Class and showModalDialog method,但它们似乎都没有设置HtmlTemplate对象高度的方法。
答案 0 :(得分:6)
在.evaulate()方法之后链接它时可以使用.setHeight()方法,如下所示:
template = template.evaluate()
.setSandboxMode(HtmlService.SandboxMode.IFRAME)
.setHeight(300);
更新2/19/19: .setSandboxMode()
方法不再有任何效果 - 现在所有脚本现在都使用IFRAME模式,无论设置了什么样的沙箱模式(documentation )。这种方法与设置高度无关,但我想如果有人最终复制并粘贴此代码示例,我会提及此。