这是我的疑问:我使用Vue
和Laravel
应用程序,并且试图创建一个函数,该函数每5分钟对服务器进行一次调用,以刷新日志。在页面上。
我发现的唯一方法是使用JavaScript
本机函数setInterval
。
这真的是最好的唯一方法吗?我只是想知道这种情况是否有其他方法。
答案 0 :(得分:0)
我认为最好在每个成功请求之后使用setTimeout
。您要实现的目标称为长轮询。
答案 1 :(得分:0)
通常,本机函数通常是最佳选择。
对于这种情况,您确实可以使用interval
:
let myInterval = setInterval(() => {
//make call to refresh logs
console.log('interval')
}, 1000); //using 1s for demo purposes
替代方法是使用timeout
:
let myTimeout = (() => {
//make call to refresh logs
console.log('timeout')
//you could put this timeout inside successful log refresh
setTimeout(() => {
myTimeout()
}, 1000);
})
请查看here。希望它能给您一些想法。