서버의 날짜 개체가 밀리 초 형식으로 포함 된 ng-repeat를 사용하여 생성 된 목록을 필터링하려고합니다. 목록이 잘 생성하고 각 날짜로 서식을 지정하지만 필터를 사용할 때 필터가 텍스트가 아니라 밀리 초 단위로 작동한다고 가정합니다. 필터를 표시하기 전에 컨트롤러 또는 서비스의 날짜를 포맷해야합니까? 아니면이 방법이 있습니까?각형 검색 필터 및 날짜가 작동하지 않습니다.
HTML : 어떤 제안에 대한 http://plnkr.co/byQkzHSTXLHPCdU0pj3o
감사 :
여기angular.module('dates', []);
var DateController = function($scope) {
$scope.records = [{date:1403802879000, activity: "biking"}, {date:1276495200000, activity: "hiking"}, {date:1403802879000, activity: "walking"},
{date:1403802879000, activity: "biking"}, {date:1276495200000, activity: "hiking"}];
}
가 plunker입니다 : 여기
<!DOCTYPE html>
<html ng-app="dates">
<head>
<script data-require="[email protected]*" data-semver="1.3.0-beta.5" src="https://code.angularjs.org/1.3.0-beta.5/angular.js"></script>
<link rel="stylesheet" href="style.css" />
<script src="script.js"></script>
</head>
<body ng-controller="DateController">
<input type="text" class="form-control" placeholder="Search" ng-model="searchText">
<p>{{dates}}</p>
<ul ng-repeat="record in records | filter: searchText">
<li>{{record.activity}}</li>
<li>{{record.date | date: longDate}}</li>
</ul>
</body>
</html>
내 자바 스크립트입니다! 문자열에
이 두 나에게 허용 솔루션처럼 -이 경우 나는 것 중 하나 또는를 성능에 대해 걱정할 필요가 있지만 레코드의 말도 안되는 금액을했던 상황에서하지 않는다 다른 솔루션이 더 좋을까요? – paniclater
말도 안되는 양의 레코드가 있다면 ... mongodb와 같은 데이터베이스에 보관하는 것이 좋습니다 그런 다음 searchText 모델에는 업데이트 될 때마다 일치하는 개체를 찾기 위해 http.post 요청을 수행하도록되어 있습니다 귀하의 searchText. 웹 브라우저 내에 보관할 수있는 레코드의 수에는 제한이 있으며 성능이 저하되기 전에 웹 브라우저에 표시 할 수있는 레코드의 수에 훨씬 더 작은 한계가 있습니다. 웹 브라우저에서 모든 것을 유지하면 디스플레이의 페이지를 매기고 <100 –
으로 유지하는 것이 좋습니다. 응용 프로그램의 날짜로 일부 수학을 수행하지 않는 한. 형식을 문자열로 변경하고 각도에 의해 제공되는 기본 filter.js에 의존하는 것이 더 좋을 것이라고 생각합니다. 또는 함수를 통해 ms를 날짜로 변환하십시오. –