angular.js - finish-callback() pemalam pemasa sudut tidak memuatkan semula paparan
滿天的星座
滿天的星座 2017-05-15 17:05:21
0
1
903
<p ng-show="smsSent">
<timer interval="1000" countdown="60" end-time="0" finish-callback="smsSent=!smsSent">{{seconds}}</timer>
</p>

Saya mahu memanggil selesai-panggilan balik selepas undur pemasa tamat, dan kemudian nilai smsSent akan diterbalikkan, jadi <p ng-show="smsSent">p ini akan disembunyikan... sekarang apabila undur mencapai 0 , I diperhatikan bahawa nilai smsSent memang telah berubah, tetapi <p ng-show="smsSent"> p ini tidak tersembunyi, bermakna tiada percubaan menyegarkan Tolong bantu, bagaimana saya boleh menyembunyikan p

itu
滿天的星座
滿天的星座

membalas semua(1)
Ty80

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);
 +              }
              }
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan