我有一些数据作为整数被实时更新到Google表格中,然后将其插入页面的HTML中,然后使用Javascript来对数字进行动画处理,直到存储的数字为止。
不幸的是,在激活计数器功能之前未收到来自Google工作表的数据,因此在页面加载时我的计数器显示为0,但是刷新页面时,所有内容都可以计算到工作表中存储的数量。
如果计数器功能可以延迟到接收到图纸数据之前,我相信这可以按预期运行。
我是html和Javascript的业余爱好者,因此可能没有正确实现这些功能,但我已经尝试过:
在<脚本> 中放置延迟
-插入setTimeout(setTimeout似乎最有可能实现我需要的功能,但我无法正确延迟计数器)
-我的html中的计数器脚本-
select-word-style bash
我希望页面加载,并且数字最多可以存储到我在Google表格文件夹中存储的数字。当前,它在页面加载时显示为0,并且仅在刷新页面后才能正常工作。
谢谢。
答案 0 :(得分:0)
浏览器中当前生成的Javascript没有允许其他内容运行的wait()或sleep()。因此,您根本无法满足您的要求。相反,它具有异步操作,可以执行其操作,然后在操作完成时调用您(就像您一直在使用promise一样)。
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise
function waitForDataLoad() {
return new Promise(function(resolve, reject) {
// process your data load or any processs
setTimeout(function(){
resolve();
},3000)
})
}
waitForDataLoad().then(function(result) {
// use the result here
// Further process here
// this script will be only loaded when above function return resolve();
console.log("data is loaded compeletly")
});