如何在$ apply完成之后延迟操作?

时间:2015-03-12 15:19:34

标签: javascript angularjs

鉴于此代码:

   <body ng-keydown="key($event);">

   $scope.key = function ($event) {
       if (key == 13) {
           document.getElementById("aButton").click();
       }
   }

当我运行代码时,我收到一条消息,说有:

   $apply already in progress

有人可以就如何解决我的问题给我一些建议。

1 个答案:

答案 0 :(得分:1)

尝试$timeout

$scope.key = function ($event) {
       if ($event.which == 13) {
           $timeout(function(){
              document.getElementById("aButton").click();
           })
       }
   }