Vue.js
Benutzerdefinierte Filter
Suche…
Syntax
-
Vue.filter(name, function(value){});
//Basic -
Vue.filter(name, function(value, begin, end){});
// Basic mit Umbruchwerten -
Vue.filter(name, function(value, input){});
// Dynamisch -
Vue.filter(name, { read: function(value){}, write: function(value){} });
// Zweiwege
Parameter
Parameter | Einzelheiten |
---|---|
Name | String - gewünschter aufrufbarer Name des Filters |
Wert | [Callback] Any - Wert der Daten, die in den Filter gelangen |
Start | [Rückruf] Beliebiger Wert, der vor den übergebenen Daten liegt |
Ende | [Rückruf] Beliebiger Wert, der nach den übergebenen Daten kommt |
Eingang | [Rückruf] Alle - Benutzereingaben, die für dynamische Ergebnisse an die Vue-Instanz gebunden sind |
Zweiwege-Filter
Mit einem two-way filter
können wir einem einzelnen filter
einen read
und write
zuweisen, der den Wert derselben Daten zwischen view
und model
ändert.
//JS
Vue.filter('uppercase', {
//read : model -> view
read: function(value) {
return value.toUpperCase();
},
//write : view -> model
write: function(value) {
return value.toLowerCase();
}
});
/*
* Base value of data: 'example string'
*
* In the view : 'EXAMPLE STRING'
* In the model : 'example string'
*/
Basic
Benutzerdefinierte Filter in Vue.js
können einfach in einem einzigen Funktionsaufruf von Vue.filter
.
//JS
Vue.filter('reverse', function(value) {
return value.split('').reverse().join('');
});
//HTML
<span>{{ msg | reverse }}</span> //'This is fun!' => '!nuf si sihT'
Es ist ./filters
, alle benutzerdefinierten Filter in separaten Dateien zu speichern, z. Wenn Sie diesen Weg gehen, müssen Sie das JS-Teil ersetzen :
//JS
Vue.filter('reverse', require('./filters/reverse'));
Sie können auch Ihre eigenen begin
und end
Wrapper definieren.
//JS
Vue.filter('wrap', function(value, begin, end) {
return begin + value + end;
});
//HTML
<span>{{ msg | wrap 'The' 'fox' }}</span> //'quick brown' => 'The quick brown fox'
Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow