recherche

Maison  >  Questions et réponses  >  le corps du texte

angular.js - ng-repeat的值回处理后再绑定到页面

<p ng-switch="list.state">
     <p ng-switch-when="0">
         <p class="rob text-center btn-rob" ng-if="list.openTime<=0">
             <p class="content">开抢<br></p>
         </p>
     
         <p class="rob text-center btn-full" ng-disabled="true" ng-if="list.openTime>0">
            <p class="content">即将开标<br><span >这里需要倒计时</span></p>
         </p>
    </p>
    
    <p ng-switch-when="1" class="rob text-center btn-full" ng-click="jump('/invest')" ng-disabled="true">
        <p class="content">满标</p>
     </p>
</p>

上面代码:倒计时 ng-repeat可获取到毫秒差值 list.openTime 需要做成倒计时的字符串显示在 span中,请问应该怎么做?

我想大声告诉你我想大声告诉你2744 Il y a quelques jours541

répondre à tous(1)je répondrai

  • 阿神

    阿神2017-05-15 17:10:11

    list.openTimeCette variable elle-même devrait déjà exister dans le contrôleur. Normalement, vous devriez avoir cette phrase dans votre contrôleur

    var list = this;
    

    Si ce list.openTime est juste une valeur renvoyée par le serveur et n'a pas besoin d'être renvoyée au serveur, alors vous pouvez directement gérer la période dans le contrôleur.

    //controller
    list.openTime=Math.round(list.openTime);//把时间转化成时间戳
    $interval(function () {
        list.openTime -= 1;//每秒减一,在页面把这个格式化成时间格式
    }, 1000);
    //html
    <span>{{list.openTime|date:"HH:mm:ss"}}</span>
    

    Si list.openTime est toujours utile, clonez-le dans une autre variable et utilisez une autre variable pour décrémenter.
    À proprement parler, la fonction de décrémentation doit être placée dans une variable et annulée à la fin de la décrémentation.
    C’est probablement à ça que ça ressemble.

    répondre
    0
  • Annulerrépondre