varios sintaxis otro modulos llamar hacer funciones funcion entre controladores controlador conectar comunicacion como javascript angularjs data-binding angularjs-filter

javascript - sintaxis - modulos angularjs



¿Cómo crear filtro en Angularjs? (2)

Puede crear su filter personalizado para que pueda proporcionarle los valores filtrados, el filtro debe tomar una matriz de elemento para ser una matriz de filtros.

Margen

ng-repeat="course in courses| customFilter: [{"id": 3},{"id": 2},{"id": 1}]""

Filtrar

app.filter(''customFilter'', function(){ return function(array, filterArray){ var ids = []; angular.forEach(filterArray, function(val, index) { ids.push(val.id); } return array.filter(function(value){ return ids.indexOf(value.id) !== -1; }); } })

Tengo esta colección de cursos:

[{ id: 1, courseId: 2, text: ''John'' }, { id: 2, courseId: 2, text: ''Willi'' }, { id: 3, courseId: 2, text: ''Inga'' }, { id: 4, courseId: 1, text: ''Jerry'' }, { id: 5, courseId: 1, text: ''Michael'' }, { id: 1, courseId: 3, text: ''John'' }, { id: 2, courseId: 3, text: ''Willi'' }, { id: 3, courseId: 4, text: ''Inga'' }, { id: 4, courseId: 5, text: ''Jerry'' }, { id: 5, courseId: 5, text: ''Michael'' }]

Y tengo este conjunto de id:

[{"id": 3},{"id": 2},{"id": 1}]

Necesito filtrar la matriz de cursos por una matriz de id (es decir, para mostrar solo cursos de texto que tienen courseId = 3,2,1):

ng-repeat="course in courses| customFilter: [{"id": 3},{"id": 2},{"id": 1}]"

Necesito crear un filtro personalizado en angularJS que filtre la matriz de cursos por una matriz de id.

¿Alguna idea de cómo puedo implementar CustomFilter para este propósito?


He creado un filtro en el proyecto angularJs.

en mi nombre de aplicación angular es angularApp.

var app = angular.module(''angularApp'', []); // This is your main angular app.

Ahora quiere crear un filtro para decodificar url.

app.filter(''decodeURL'', function() { return function(text) { if(text) { return text.split('' '').join(''-'').toLowerCase().replace(/[^a-z0-9]+/g, ''-''); } } });

El código anterior es para crear un filtro para decodificar url. Y mi nombre de filtro es ''decodeURL''. usaremos decodeURL como un filtro en mi código, como si tu URL es-

http://www.example.com/test1 test2 tes3

luego filtra la URL como esta-

http://www.example.com/test1-test2-tes3

Cómo usar este filtro en html-

<a ui-sref="{{business.category[0].categoryName.toLowerCase()}}Detail({id:business.id,title:(business.title | decodeURL)})"></a>

// Lo anterior es para el enrutamiento de estado en angularjs.

<a href="/coupon/{{coupon.id}}/{{coupon.title | decodeURL}}" class="btn btn-warning show-btnhome show-button-margin">Show</a>

// El código anterior para la redirección de URL.