나는 대시 보드 (vm.dashboards) 목록을 가지고 있는데,이 중 대시 보드를 필자가 만든 필터로 필터링하려고합니다. 기본적으로 전체 목록을 표시하지만 "내 대시 보드 표시"확인란을 클릭하면 나에 의해 작성된 대시 보드 목록 만 표시됩니다.확인란을 사용하여 각도 필터를 구현합니다.
HTML 코드 :
<div>
<input type="checkbox" ng-model="showMyDashboard" ng-value="vm.myDashboard" ng-checked="false" ng-true-value="1" ng-false-value="0"><span for="radio" style="margin-left:5px;" class="text-only">Show my dashboards</span>
</div>
<ul ng-repeat="dashboard in vm.dashboards" class="list-group">
<li class="list-group-item">
<div class="row">
<div class="col-sm-5"><a class="list-group-item-heading dashboard-heading">{{ dashboard.title }} </a>
<p class="list-group-item-text dashboard-text">{{ dashboard.desc }}</p>
</div></li>
</ul>
이제 까다로운 부분은 myDashboards 목록을 얻을 수있는 직접적인 방법이 없다는 것입니다. (currentUserId === dashboardOwnerId)이면 해당 대시 보드는 myDashboard입니다. 그래서 필터에 조건을 적용해야합니다. . 1과 같은 값을 줄 것이다 팝업(), (101), 123 을
ul.list-group(ng-repeat="dashboard in vm.dashboards | filter: dashboard.creator["@href"].split("/").pop() === vm.currentUSerID")
그래서, dashboard.creator [ "@ href를"] 분할 ("/") 및 currentUSerID 것이다. 나는이 방법을 수행 시도 비슷한 가치관을 제공하십시오. 언제 둘 다 나와 일치하는 대시 보드를 얻을 날.
위의 필터는 내가 원하는 것과 완전히 반대이며, 저에게 생성되지 않은 모든 대시 보드를 나열합니다. 필터에 이러한 조건을 부여 할 수 있습니까? 그것을 위해 맞춤 필터를 만들어야합니까? 어떤 도움이나 제안도 부탁드립니다. 감사!
아래 링크를 확인하십시오. [링크] (http://stackoverflow.com/questions/23983322/angularjs-checkbox-filter) –