web-dev-qa-db-ja.com

AngularJs ng-if日付の比較

これが私のjadeファイルのようであれば、ng-の2つの日付を比較したいと思っています。

li.list-group-item(ng-if="app.Segments[0].StartDate.getTime() > date.getTime()")
    div.row
        div.col-xs-12
            span
                i.fa.fa-plus-square

このコードは、最初のセグメントの開始日が今日以降であれば、私のUIにliを追加することを望みます。

$scope.date = new Date();
$scope.app = {
    Segments: [{
       StartDate: 2014-11-15T04:00:00.000Z
       EndDate: 2014-11-20T04:00:00.000Z
    },
    {
        StartDate: 2014-11-21T04:00:00.000Z
        EndDate: 2014-11-25T04:00:00.000Z
    }]

}

とにかくこの仕事をする方法はありますか?

13
Dalton Shehan

日付オブジェクトの場合は、.getTime()なしで直接比較するだけです

$scope.date2005 = new Date('2005/01/01');
$scope.date2006 = new Date('2006-01-01T04:00:00.000Z');
<div ng-if="date2005 > date2006">date2005 > date2006</div> <!-- won't show -->
<div ng-if="date2006 > date2005">date2006 > date2005</div> <!-- will show -->

http://plnkr.co/edit/fNB11U6KmFszdV3lMAPJ?p=preview

13
laggingreflex

Angularは、書式が整っていれば日付を直接比較できます。

見る

li.list-group-item(ng-if="app.Segments[0].StartDate > now")

コントローラ

$scope.now = new Date();
$scope.now.toISOString();
8
Sebastien Horin