Javascript 通过angular.js更改$interval内的变量

Javascript 通过angular.js更改$interval内的变量,javascript,angularjs,Javascript,Angularjs,我想在屏幕上构建一个类似警报的东西。我现在使用angular.js和一些OOP来实现这一点。这是代码 main是我在ng控制器中创建的一个实例 $scope.main = new ran_num(); html部分 <p>{{ main.count }}</p> 我想做的是,当第一个if语句完成时,main.count应该在“错误”和“--”之间切换,这看起来像是一个警告。当我在间隔内记录self.count时,我发现它显示未定义,我不确定代码的哪一部分出错了?这是控

我想在屏幕上构建一个类似警报的东西。我现在使用angular.js和一些OOP来实现这一点。这是代码

main是我在ng控制器中创建的一个实例

$scope.main = new ran_num();
html部分

<p>{{ main.count }}</p>

我想做的是,当第一个if语句完成时,main.count应该在“错误”和“--”之间切换,这看起来像是一个警告。当我在间隔内记录self.count时,我发现它显示未定义,我不确定代码的哪一部分出错了?

这是控制器实例。可以使用controllerAs语法指定它。无法使用
$scope.main=new ran_num()
来“创建”它。很抱歉,我对这一点很陌生,我应该说object吗?
var self = this;
if(self.player[self.player.length-1] != self.ran[self.player.length-1]){
      self.player = [];
      self.mode = "computer";
      var l = self.count;
      self.count = "Wrong";
      a = $interval(function(){
        console.log(self.count);
        console.log("wrong");
        if(self.count == 'Wrong')self.count = '- -';
        if(self.count == '- -')self.count= 'Wrong';
      },400,4);
      self.count = l;
       var c = setTimeout(function(){
          self.play_all_sound("computer");
      },500);
      self.mode = "human";
    }