2016-08-07 2 views
0

Я хочу отсортировать список комментариев по различным свойствам, таким как рейтинг, дата, ... , но не используя кнопки и получить свойство как текст во входных данных.Угловая, сортировка по enting собственности в качестве текстового ввода

По умолчанию свойство является рейтингом, но 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-модели или где-нибудь в тег? например, я хочу, чтобы рейтинги показывали от высокого к низкому и -результату от низкого до высокого, теперь наоборот. –

+0

Ну, вы можете, но я бы предложил вам сделать это, используя или «радиокнопку» или «флажок» (истина/ложь). Вам нужна помощь? – developer033

+0

Спасибо, но моя задача заключалась в использовании входного текста. конечно, вы правые кнопки облегчают работу –