自动刷新Google Apps Scripts webapp UI?

Who*_*nch 0 javascript web-applications google-apps-script

我使用Google Apps Scripts创建了一个简单的Web应用程序.UI只显示在FusionTable中连续更新的几个数字.自定义数据采集系统在我家本地运行,并每分钟向FusionTable发送新结果.我希望每隔一分钟更新我的GAS webapp上的UI,以便显示新的数字.

通过运行时间驱动程序触发器来定期从FusionTable中获取数据并将数字存储在我脚本自己的ScriptDb中,我解决了一半的问题.所以这可以很好地将我的数据放在正确的邻域中.但我仍然没有看到如何使用新数据定期更新UI中的文本框.

到目前为止,我已在UI上手动配置了一个刷新按钮,用户可以单击该按钮以使用存储在ScriptDb中的最新数字更新显示.我很亲密,我可以尝到它!

有人有想法吗?

小智 5

您可以使用该UiInstance.addTimer方法进行自动刷新,但它没有记录,也许不受支持.

它的语法是 UiInstance.addTimer( ServerHandler , interval);

请参阅下面的示例代码.

function doGet(e) {

  var app = UiApp.createApplication();

  

  app.add(app.createLabel(new Date()).setId("label"));

  

  app.addTimer(app.createServerHandler("update") , 1000);

  

  return app;

}



function update(e){

  var app = UiApp.getActiveApplication();

  app.getElementById("label").setText(new Date());

  app.addTimer(app.createServerHandler("update") , 1000);


  return app;

}
Run Code Online (Sandbox Code Playgroud)

可以在此处找到示例应用程序.