私はAngularJsにアプリケーションを持っています。 私はAPIのデータで初期化されたスコープ内の変数を持っています。 $scope.receivedRequests = CurrentUserData.incomeRequests();
コントローラのフィルタリングリストが機能しない
原因のAPIに時間がかかりますが、開始時に$scope.receivedRequests
が空です。
$scope.receivedRequests
私は、このデータはまた、フィルタリングされng-repeat
<div class="full-row" ng-repeat="row in receivedRequests | filterByStatus:[State.PENDING] | partition:3 track by $index">
を使用しました。 しかし、ときに私が
$scope.filterByStatus = function (statuses) {
return $filter('filterByStatus')($scope.receivedRequests, statuses);
};
$scope.pendingRequests = $scope.filterByStatus([State.PENDING]);
$scope.pendingRequests
は常に空だったように、コントローラにこのフィルタリングを交換しようとしました。
コントローラのデータをフィルタリングするにはどうすればよいですか?
.filter('filterByStatus', function() {
return function(arr, statuses) {
if (!arr) { return; }
return arr.filter(function(value) {
return statuses.some(function(val) {
return value.status == val;
});
});
};
})。あなたは以下試すことができます私は、あなたの$ scope.recievedRequestsが見えるオブジェクトをどのように確認していないstatus : "Pending"
filterByStatusフィルタコードと$ scope.recievedRequests配列を共有できますか。 – Thalaivar