我通过使用firebase在javascript webapp上编码来解决问题:
function start() {
setInterval(getComps, 2000);
}
function getComps() {
permis=true;
for (var pc=policeNum; pc>0; pc--) {
policeRef.child(pc).once('value', function(snapshot) {
var oldData = snapshot.val();
//KI:
var compX=newX-oldData.X;
var compY=newY-oldData.Y;
updatePosition(compX, compY);
});
}
}
(应用程序的真实代码当然更复杂,但这足以理解我认为的问题)(使用index.html中的按钮调用start())
当我运行我的应用程序时,我可以看到updatePosition()仅在开始时调用一次,但在我想要的时间间隔内不再调用。有人知道这里有什么问题,可以给我一个更好的代码的例子或解释。
感谢您的每一个答案,我希望您能理解我的意思。 (所有变量当然都是定义的)