Google app maker 在Google App Maker中,如何更新标签以显示当前时间?

Google app maker 在Google App Maker中,如何更新标签以显示当前时间?,google-app-maker,Google App Maker,如何更新Google App Maker中文本标签中显示的时间以显示当前时间 我正在创建一个登录/注销信息亭,我想在屏幕上显示当前日期和时间,如下所示 日期和时间在标签的“onAttach”事件脚本中指定: var options = { weekday: "long", year: "numeric", month: "long", day: "numeric", hour: "numeric", minute: "2-digit" }; var current

如何更新Google App Maker中文本标签中显示的时间以显示当前时间

我正在创建一个登录/注销信息亭,我想在屏幕上显示当前日期和时间,如下所示

日期和时间在标签的“onAttach”事件脚本中指定:

var options = {  
    weekday: "long", year: "numeric", month: "long",  
    day: "numeric", hour: "numeric", minute: "2-digit"  
};

var currentDateTime = new Date().toLocaleTimeString('en-US', options, {timeZone: 'America/New_York'});
widget.text = currentDateTime;
但是,此标签仅在页面加载时更新,并且没有定期运行脚本以更新时间的事件选项。我希望有一个解决方案不需要服务器脚本或创建新的数据源,但是,这可能是必要的

感谢您的帮助

更新问题。

经过进一步研究,我发现其他人使用SetInterval定期调用函数。我用SetInterval函数更新了脚本。这似乎是可行的,然而,我的研究也发现一些人认为SetInterval并不总是一个好的选择。我对它的了解还不够,现在还不能做出判断,但如果我了解更多,我会更新这篇文章

function getCurrentDateTime() {
  var options = {  
    weekday: "long", year: "numeric", month: "long",  
    day: "numeric", hour: "numeric", minute: "2-digit" 
};

var currentDateTime = new Date().toLocaleTimeString('en-US', options, {timeZone: 'America/New_York'});
widget.text = currentDateTime;
}
getCurrentDateTime();
var interval = setInterval(getCurrentDateTime, 60000);

感谢您确认使用setInterval是合适的。另外,请欣赏在用户离开页面时清除间隔的提示。我想我有一个解决办法。我使用的方法是

  • 为名为setIntervalIDNumber的页面定义自定义属性
  • 使用onAttach事件启动setInterval功能,并 将setInterval编号存储在setIntervalIDNumber属性中
  • 通过引用 setIntervalIDNumber属性
  • 代码如下:

    转速表:

    function getCurrentDateTime() {
      var options = {  
        weekday: "long", year: "numeric", month: "long",  
        day: "numeric", hour: "numeric", minute: "2-digit" 
    };
    
    var currentDateTime = new Date().toLocaleTimeString('en-US', options, {timeZone: 'America/New_York'});
    widget.text = currentDateTime;
    }
    getCurrentDateTime();
    widget.root.properties.setIntervalIDNumber = setInterval(getCurrentDateTime, 60000);
    
    附加器:

    clearInterval(widget.root.properties.setIntervalIDNumber);
    

    我认为这可能是最终的解决方案。

    setInterval是这里的正确选择。您所要做的就是在他们离开页面时清除间隔,并在页面加载时再次设置间隔。我认为不使用setInterval的参考仅适用于服务器脚本需要在客户端发生某些事情之前完成的情况。在这种情况下,您应该使用success和failure函数,但使用setInterval完全可以。