我试图在模态对话框窗口中显示html消息体,但是在调用SpreadsheetApp.getUi()方法时遇到错误。
...
var html = HtmlService.createHtmlOutput(threads[i].getMessages()[0].getBody());
SpreadsheetApp.getUi().showModalDialog(html, 'My add-on');
...
如何调用该对话框?或者可能有更好的方法来显示消息(某些面板或侧边栏)?
答案 0 :(得分:1)
此提示框具有误导性,因为错误必须在其他地方。 Sheets not only does support the getUI method的新版本,我相信它是专门为设计的新版本的工作表。
我expanded on your previous question并在新版本的工作表中使用以下代码自行测试:
function getMail() {
var threads = GmailApp.getInboxThreads();
var messages = threads[0].getMessages()[0];
var raw = messages.getPlainBody();
return raw;
}
function dialogueBox(){
var raw = getMail();
var htmlOutput = HtmlService.createHtmlOutput(raw);
SpreadsheetApp.getUi().showModalDialog(htmlOutput, 'For mk_yo');
}
并显示没有问题的提示,如here所示。尝试使用新脚本创建新工作表并运行上面的代码。此外,您可以尝试确保您要添加的工作表肯定使用新版本的工作表。
关于通过显示侧面板是否有更好的方法,是的,您可以使用custom sidebars in the new version of Google sheets(并且只使用新版本),但由于这仍然使用'getUI'方法,因此无法解决你当前的错误,因为这不是问题所在。