33 lines
776 B
Markdown
33 lines
776 B
Markdown
# .cadoles-slide-title[Les filtres (3/3)]
|
|
|
|
**Création d'un filtre personnalisé**
|
|
```js
|
|
// Création du filtre
|
|
angular.module('myApp', []).filter('join', function() {
|
|
|
|
// Fonction de formatage
|
|
return function(input, separator) {
|
|
|
|
// Utilisation d'une valeur par défaut si le séparateur n'est pas défini
|
|
separator = separator || ',';
|
|
|
|
// Si l'entrée n'est pas un tableau, on retourne celle ci sans modification
|
|
if( !angular.isArray(input) ) return input;
|
|
|
|
// On retourne le tableau sous la forme d'une chaine de caractères,
|
|
// ses éléments joints par le séparateur
|
|
return input.join(separator);
|
|
|
|
};
|
|
|
|
});
|
|
```
|
|
**Usage**
|
|
```html
|
|
<div ng-app="myApp" ng-init="myArr = ['item 1', 'item 2', 'item 3']">
|
|
|
|
{{ myArr | join:'/' }}
|
|
|
|
</div>
|
|
```
|