2017-06-20 24 views
0

我試圖在moment js的角度上使用過濾方法。當我在我的領域填充這些領域的一個點擊搜索按鈕。它顯示沒有結果。它應該顯示一個結果。

"TO" : "DEL" 
"FROM" :"PNQ" 
"DEPART Date" : "10-01-2017" 

這裏是我的代碼

https://plnkr.co/edit/k4FBxqufETslgYxm4zEx?p=preview

$scope.searchClick =function(){ 
    if($scope.fromStation!='' && $scope.toStation!='' && $scope.departDate !=''){ 
    $scope.names = $scope.defaultNames.filter(function(item){ 
     var time1 = moment(item.flight_date, "DD-MM-YYYY"); 
     var time2 = moment($scope.departDate, "DD-MM-YYYY"); 
     console.log(moment(time1).isSame(time2)) 
     return item.to_station === $scope.toStation 
     && item.from_station === $scope.fromStation 
     && moment(time1).isSame(time2) 
    }) 
    } 
} 

此行給出了第一個對象真正的輸出。但不顯示爲什麼?

console.log(moment(time1).isSame(time2)) 
+0

你能解釋一下多一點幫助。我不明白你的問題。由於日期不匹配,您的樣本是否破裂? –

回答

0

我想你有點不對。 Angular 1中的$ filters與JavaScript Arrays中的filter不同。你在上面做的事情應該返回一個不是True或False的對象,因爲你的return語句正在做。您可以嘗試修改一下,以便首先返回值,然後查看日期時間問題。您分享的plunkr的更多信息不包含您在問題中提到的代碼。

看一看這個https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter?v=control這可能是

相關問題