javascript - 修改 Meteor.setInterval 函数中的类属性

标签 javascript meteor setinterval

我需要做:

TestClass = function(){
   this.left =10
   this.finterval = function(){
       console.log("this.finterval:"+JSON.stringify(intervalId))
       this.left =  this.left -1
       Meteor.clearInterval(intervalId)
   }
   var intervalId = Meteor.setInterval(this.finterval,1000)
   console.log("this.intervalId:" + this.intervalId)
}

有没有办法在interval方法中修改this.left?

最佳答案

this 始终引用当前作用域,因此如果您嵌套函数,则需要将其分配给另一个 var(例如 self):

TestClass = function(){
   this.left =10
   var self = this;
   this.finterval = function(){
       console.log("this.finterval:"+JSON.stringify(intervalId))
       self.left =  self.left -1
       Meteor.clearInterval(intervalId)
   }
   var intervalId = Meteor.setInterval(this.finterval,1000)
   console.log("this.intervalId:" + this.intervalId)
}

关于javascript - 修改 Meteor.setInterval 函数中的类属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28161155/

相关文章:

javascript - 如何使用 meteor 定期更新变量

javascript - 有什么方法可以在单击按钮时删除过滤器

javascript - 如何在 JQuery 中选择除被单击元素之外的所有类?

javascript - Google 图表工具提示位置问题

ubuntu - Docker:MeteorJS 安装了两次并出现一些警告

javascript - 在 Firebase 实时数据库上记录当前秒数的云函数

javascript - 打印收据样式

android - 如何使用 native 代码和 Meteor 代码部署 Android 应用程序?

javascript - 引用错误: Template is not defined in Meteor

javascript - setInterval 似乎不起作用?