2016-08-07 4 views
0

등급, 날짜, ... 등의 다른 속성별로 주석 목록을 정렬하고 싶습니다. 버튼을 사용하지 않고 입력의 텍스트로 속성을 가져옵니다.각도, 속성을 텍스트 입력으로 지정하여 정렬

기본적으로 속성은 rating이지만 ng-repeat는 아무 것도 게시하지 않습니다.

내 코드는 다음과 같습니다

<div ng-controller="controller as Ctrl"> 
     <p>SortBy: <input type="text" name="input" ng-model="Ctrl.dish.sortProperty"></p> 
<blockquote ng-repeat="comment in Ctrl.dish.comments | orderBy:'{{Ctrl.dish.sortProperty}}'"> 
         <p>{{comment.rating}}</p> 
         <p>{{comment.comment}}</p> 
         <footer>{{comment.author}} ,<cite title="Source Title">{{comment.date| date:'mediumDate'}}</cite></footer> 
</blockquote> 
</div> 

및 컨트롤러와 :

<script> 

     var app = angular.module('myApp',[]); 
     app.controller('controller', function() { 
      var dish={ 
          sortProperty:'rating', 
          comments: [ 
           { 
            rating:5, 
            comment:"blablalbla", 
            author:"John Lemon", 
            date:"2012-10-16T17:57:28.556094Z" 
           }, 
           { 
            rating:4, 
            comment:"blablabla", 
            author:"Paul McVites", 
            date:"2014-09-05T17:57:28.556094Z" 
           }, 
           { 
           // more comments 
           } 
          ]}; 
        this.dish = dish; }); 
</script> 

답변

0

는 작은 따옴표와 보간 {{ }} 제거

<blockquote ng-repeat="comment in Ctrl.dish.comments | orderBy: Ctrl.dish.sortProperty"> 
+0

감사, 그리고 하나 개 더 질문을 할 수 있습니다 ng-model 또는 태그의 어딘가에 역방향 조건을 넣으시겠습니까? 낮은 등급에서 높은 등급으로 등급을 보여주고 싶습니다. 낮은 등급에서 높은 등급으로 표시하고 싶습니다. 이제는 그 반대입니다. –

+0

글쎄, 할 수는 있지만,'radio button'이나'checkbox' (허위 사실). 이걸 좀 도와 주실 필요가 있습니까? – developer033

+0

고마워,하지만 내 작업이 입력 텍스트를 사용하고 있었다. 물론 당신이 옳은 버튼을 사용하면 작업을 더 쉽게 할 수 있습니다. –