吐司没有出现?

Toast not showing up?

当我向函数添加 toast 并且 运行 或调试该函数时,toast 不显示,日志中没有错误,并且它之前或之后的任何记录消息都显示在控制台中。但是,当我在空白电子表格的应用程序脚本中放置完全相同的 toast 代码时,toast 确实显示了。

SpreadsheetApp.getActiveSpreadsheet().toast('Script is starting');
SpreadsheetApp.getActiveSpreadsheet().toast('⏰ Script running', 'Notice', 60); 

我确实在 appsscript.json 文件的 Oauth 范围中添加了文档中的两个范围:

https://www.googleapis.com/auth/spreadsheets.currentonly

https://www.googleapis.com/auth/spreadsheets

是否还有其他原因导致 Toast 可能无法在表格中显示?谢谢!

为了使 Google Sheets UI 方法如 toast 正常工作,

  1. 脚本应该绑定到电子表格或者它应该是一个编辑器add-on
  2. 如果脚本 运行 来自 Google Apps 脚本编辑器,则应通过 Google 表格用户界面打开:
    1. 打开电子表格
    2. 点击扩展 > Apps 脚本

为了更轻松地调试代码,您可能会发现将活动电子表格分配给变量更方便:

const spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
if(spreadsheet) {
  spreadsheet.toast('Script is starting');
} else {
  throw new Error(`Can't get the active spreadsheet`);
}

注意:Sign-in 到多个帐户可能会导致脚本无法正常工作。尝试 sign-out 的所有帐户,并且 sign-in 仅进入有权访问电子表格的帐户或与您的其他帐户共享电子表格。