Questo è un domanda interessante Di solito si dovrebbe fare qualcosa di simile o qualcosa di simile:
var translatedValue = $filter('translate')('ACTIVE');
var lowercaseValue = $filter('lowercase')(translatedValue);
$scope.finalValue = $filter('limitTo')(lowercaseValue, 5)
ho creato un servizio ispirato dalla this answer.
app.service('FilterChain',
['$filter', function($filter) {
var chain = {
value : '',
start : function(value) {
this.value = value;
return this;
},
applyFilter : function(filterName, args) {
args = args || [];
args.unshift(this.value);
this.value = $filter(filterName).apply(undefined, args)
return this;
}
};
return chain;
}]);
uso è come questo
$scope.value = FilterChain.start('Active')
.applyFilter('translate')
.applyFilter('limitTo', [5])
.applyFilter('uppercase')
.value;
È possibile utilizzare il servizio con altri filtri e oggetti come gli array. Guarda un esempio di lavoro qui: JSFiddle
Qual è la tua domanda esattamente? La domanda ha la risposta: stai già utilizzando più filtri nel controller. –
Sto usando più filtri @JB Nizet. Formato semplificato che voglio di questo. –
simile a: http://stackoverflow.com/questions/27852445/how-to-chain-angularjs-filters-in-controller – khakiout