Rumah  >  Soal Jawab  >  teks badan

angular.js - angular-timer 插件的finish-callback()不刷新视图

<p ng-show="smsSent">
<timer interval="1000" countdown="60" end-time="0" finish-callback="smsSent=!smsSent">{{seconds}}</timer>
</p>

我想在这个timer倒数计时结束后,调用finish-callback,然后smsSent的值就取反了,因此<p ng-show="smsSent">这个p会隐藏起来,问题是....现在倒数计时到0了之后,我观察到smsSent的值确实变了,但是<p ng-show="smsSent">这个p并不隐藏,意味着没有刷新试图,求助,我改如何做才能隐藏那个p

滿天的星座滿天的星座2713 hari yang lalu839

membalas semua(1)saya akan balas

  • PHP中文网

    PHP中文网2017-05-15 17:07:21

    Terima kasih atas jemputan Bolehkah anda memberikan cara menulis arahan pemasa, atau berikan pautan ke jsbin atau jsfiddle.net untuk menghasilkannya semula. Maklumat yang diberikan pada masa ini ialah nilai telah ditukar, tetapi Dom tidak dipaparkan, saya rasa anda boleh mencetuskan semakan kotor dalam panggilan balik $apply atau $evalAsync.

    ------------------- garis pemisah ----------------

    Cari pemalam yang anda nyatakan https://github.com/siddii/ang... , saya akan tarik permintaan itu tidak lama lagi dan anda tidak perlu mencetuskannya secara aktif dalam panggilan balik selesai $apply.

    ------------------Barisan pemisah----------------
    https://github.com/ siddii/ang...

    Permintaan telah ditarik, terutamanya perenggan berikut Apabila $scope.finishCallback dipanggil, kitaran semakan kotor dicetuskan secara aktif

    .
                 if($scope.finishCallback) {
     -              $scope.$eval($scope.finishCallback);
     +              if ($rootScope.$$phase) {
     +                $scope.$evalAsync($scope.finishCallback);
     +              } else {
     +                $scope.$apply($scope.finishCallback);
     +              }
                  }

    balas
    0
  • Batalbalas