google-apps-script - 如何在 Google Apps 脚本中设置计时器?
问题描述
我在 Google Apps Script 中编写了一个小程序,通过 Google 表格中的“UI”借用和提交项目。用户在下拉列表中找到一个项目,输入他们的名字,然后单击一个按钮进行借阅。类似地,当提交设备时,用户在另一个下拉列表中找到要提交的项目,然后单击另一个按钮。
我想要的是当物品被登记为借用或上交时向用户显示某种反馈。问题不是显示一条消息,而是让它再次消失。因此,我想要某种计时器,它可以在几秒钟后删除通知。
我搜索了一个解决方案,发现我也许可以使用“Utilities.sleep”,但它似乎只是等待指定的时间量,然后无论我如何构造它都会立即执行整个代码。
我在想这样简单的事情:
var range = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getRange('B2');
range.setValue('The item was successfully registered!');
Utilities.sleep(3000);
range.clear();
我还查看了“Lock.waitlock”,但也无法使其正常工作。我确实看到了这篇文章,但由于某种原因它对我不起作用: 在 Google Apps 脚本中设置超时
任何帮助,将不胜感激。
解决方案
为了完全模仿你的代码
var range = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getRange('B2');
range.setValue('The item was successfully registered!');
SpreadsheetApp.flush();
Utilities.sleep(3000);
range.clear();
但对我来说,我认为这是一个坏主意。
您可以使用长显示吐司:
var activeSpreadsheet = SpreadsheetApp.getActiveSpreadsheet();
activeSpreadsheet.toast('The item was successfully registered!', 'Automation', -1);
Utilities.sleep(3000);
activeSpreadsheet.toast('All fine! Relax!', 'Automation', 5 * 1000);
推荐阅读
- javascript - 使用 Lodash 对对象数组进行分组和求和
- c++ - 是否可以强制通过引用或指针(C++)传递一个类?
- python - 如何根据我的意见而不是基于 Python 中 Pandas 数据框中的某些键来更改索引的顺序?
- python - Python 请求被网站阻止
- performance - 除了 Sitespeed.io,还有哪些最好的自动化客户端性能测试工具?
- javascript - 如何将项目添加到现有数组而不影响 React 中的当前数组
- javascript - 布局中的 Xaxis 和 yaxis 自定义属性未针对 plotly 3d 网格图显示
- android - Duplicate Classes in AWS API and Appsync Serivces for Android
- c# - Linq 查询未选择字段列表
- ios - 使用外部 IDE 时模拟器上的 iOS pod 相关构建错误