【问题标题】:Auto-updatable values in angularJSangularJS中的自动更新值
【发布时间】:2017-02-07 12:40:18
【问题描述】:

我有一系列日期$scope.dates = [] ($scope.dates[0].date)。我需要使用持续时间的自动更新(!)值创建另一个数组。

  • $scope.dates[i].duration = Date.now() - $scope.dates[i].date

我想在几秒钟内创建计时器:

<tr ng-repeat="x in dates">
<td>{{x.date | date:'HH:mm:ss'}}</td>
<td>{{x.duration}}</td>

编辑:问题已解决

【问题讨论】:

    标签: javascript html angularjs date


    【解决方案1】:

    调用这个函数,它会维护$rootScope object中的对象:

    $rootScope.timerActivate = function () {
    
            console.log('activateTimer ::');
            if(!$rootScope.time)
            {
                $rootScope.time = {}
            }        
            var countDown = function () {
    
                var today = new Date();
                var hours = new Date().getHours();
                var hours = (hours + 24) % 24;
                var mid = 'am';
                if (hours == 0) { //At 00 hours we need to show 12 am
                    hours = 12;
                }
                else if (hours > 12)
                {
                    hours = hours % 12;
                    mid = 'pm';
                }
                var minute = today.getMinutes();
                var sec = today.getSeconds();
                $rootScope.time.hours = (hours < 10) ? '0' + hours : hours;
                $rootScope.time.minutes = (minute < 10) ? '0' + minute : minute;
                $rootScope.time.seconds = (sec < 10) ? '0' + sec : sec;
                $rootScope.time.blink = (sec % 2) ? ':' : ' ';
                $rootScope.time.mid = mid;
                $timeout(countDown, 1000);
            };
    
            $timeout(countDown, 1000);
    
        };
    

    【讨论】:

    • 不要把这个放在$rootScope做一个指令。
    • 为什么是new Date().getHours() 而不是today.getHours()hours = (hours + 24) % 24的预期效果是什么?
    • OK @RobG,欢迎 NickNick
    【解决方案2】:

    你应该使用 $interval。 https://docs.angularjs.org/api/ng/service/$interval

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多