2016-08-26 3 views
0

Мой тег select, который имеет параметры, которые берут с объекта.Как использовать настраиваемый фильтр на ng-опциях?

contacts = [{'Id' : 1 , 'type' : "person,occupation"}, 
      {'Id': 2 , 'type' : "student,school"}] 

<select ng-model="typeId" id="contactType" ng-init="typeId=1" ng-change="change()" ng-options="item.value as item.type for item in contacts" > 

    // my custom filter 

module.filter("splitString", ['Service', function (Service) { 
     return function (value) { 
     var s =[]; 
      if(value.type!=null) 
       s = value.type.split(","); 
       else 
       return ''; 
     if (Service.getvalue()) { 
      return s[0]; 
     } 
     else { 
      return s[1]; 
     } 
     }; 
}]); 

Service.getvalue() возвращает логическое значение, так, соответственно, мне нужно пролил через запятую строку, но когда я использую этот фильтр дает $ переваривать итерация предел погрешности

Спасибо заранее.

+1

Не совсем уверен, что вы пытаетесь сделать здесь. Вы хотите использовать «splitString» в ng-опциях? Если да, то можете ли вы объяснить, что такое var s = []; используется для? – Mathews

+0

opps my bad .... s = значение.type.split (","); – user3315353

ответ

0

Вот ответ:

var services = smthg; // put here what you want to filter 
    var filteredServices = services.filter(function(service){ 
     if(service.getvalue()) { 
      return s[0]; 
     } 
     else { 
      return s[1]; 
     } 
    } 
Смежные вопросы