【发布时间】:2016-06-19 16:30:33
【问题描述】:
我的想法是我的数组中有几个项目,它们具有标题、公司和日期值。然后将它们显示在带有 ng-repeat 的 div 中。
如果日期值是今天的日期,我希望它们显示在第一个 div 中,如果日期值不是今天,则显示在不同的 div 中。 (理想情况下,我会在今天、昨天、上周等中将它们分开。)
它当前所做的是在第一个 div 中显示日期并将它们的日期显示为今天,即使该值没有像数组中那样设置。而第二个 div 完全是空的。
JS:
var app = angular.module("myApp", []);
app.controller("boardController", function($scope) {
$scope.today= new Date();
$scope.posts = [
{
"Title" : "Alfreds Futterkiste",
"Company" : "Microsoft",
"Date" : "2016-06-19",
},{
"Title" : "Berglunds snabbköp",
"Company" : "IBM",
"Date" : "2016-06-18",
},{
"Title" : "Centro comercial Moctezuma",
"Company" : "MexaTel",
"Date" : "2016-06-03",
},{
"Title" : "Ernst Handel",
"Company" : "BlaBlaCar",
"Date" : "2016-06-11",
}
]
});
HTML 的结构如下:
<body ng-controller="boardController">
<!-- Products Container -->
<div class="col-xs-12 col-md-8 col-md-offset-2">
<!-- Product Container -->
<h2>Today</h2>
<div class="list-group-item" ng-repeat="post in posts">
<div ng-if="post.Date = today">
<h3>
{{post.Title}}
</h3>
<h5>
{{post.Date | date : 'EEE MMM d'}}
</h5>
</div>
</div>
<h2>Yesterday</h2>
<div class="list-group-item" ng-repeat="post in posts">
<div ng-if="post.Date > today">
<h3>
{{post.Title}}
</h3>
<h5>
{{post.Date | date : 'EEE MMM d'}}
</h5>
</div>
</div>
</div>
</body>
【问题讨论】:
-
=是赋值,==和===是比较运算符。 -
@elclanrs 进行了更改,第一个 div 或第二个 div 中没有任何显示。
-
我相信
today日期不能小于过去的任何其他日期。
标签: javascript angularjs angularjs-scope