


Detaillierte Erläuterung der Verwendung von Filtern in Angularjs_AngularJS
Die Funktion von Filter besteht darin, eine Eingabe zu empfangen, sie anhand einer bestimmten Regel zu verarbeiten und dann das verarbeitete Ergebnis an den Benutzer zurückzugeben. Filter können in Vorlagen, Controllern oder Diensten verwendet werden und es ist auch einfach, einen Filter anzupassen.
Filter in der Vorlage verwenden
Filter können in Ansichtsvorlagen mit dem folgenden Syntaxausdruck verwendet werden:
{{ Ausdrucksfilter }}
Zum Beispiel: Das Format {{ 12 | Währung }} verwendet den Währungsfilter, um die Zahl 12 in die Währungsform zu filtern, und das Ergebnis ist 12,00 $.
Der Filter kann auf die Ergebnisse eines anderen Filters angewendet werden. Dies wird als „Verkettung“ bezeichnet und mit der folgenden Syntax verwendet:
{{ Ausdruck |. filter2 ... }}
Parameter können im Filter erforderlich sein. Die Syntax lautet:
{{ Ausdruck |. filter:argument1:argument2:... }}
Zum Beispiel: Das Format {{ 1234 |. Zahl:2 }} verwendet die Filterverwendung von Zahl, um die Zahl 1234 in eine Zahl mit zwei Dezimalstellen zu filtern. Das Ergebnis ist: 1.234,00.
Filter verwenden
in Controllern, Diensten und Anweisungen
Sie können Filter in Controllern, Diensten und Anweisungen verwenden.
Dazu müssen Sie den Abhängigkeitsnamen in Ihren Controller/Dienst/Ihre Direktive einfügen: Filter; Beispiel: Wenn ein Filter „Number“ ist, müssen Sie „NumberFilter“ mithilfe der Abhängigkeit einfügen. Der injizierte Parameter ist eine Funktion, die einen Wert als ersten Parameter annimmt und dann den zweiten Parameter zum Filtern der Parameter verwendet.
Das folgende Beispiel verwendet einen Filter namens filter. Dieser Filter kann Arrays basierend auf Unterarrays reduzieren. Sie können auch Markup in der Ansichtsvorlage anwenden, wie zum Beispiel: {{ctrl.array|filter:'a'}}, das eine Volltextsuche nach „a“ durchführt. Durch die Verwendung von Filtern in der Ansichtsvorlage wird jedoch jeder Filter neu gefiltert, und wenn das Array relativ groß ist, wird es mehrmals geladen.
Das folgende Beispiel ruft also direkt den Filter im Controller auf. Dadurch kann der Controller den Filter bei Bedarf aufrufen (z. B. wenn die Backend-Daten geladen werden oder sich der Filterausdruck ändert).
index.html:
<div ng-controller="FilterController as ctrl"> <div> All entries: <span ng-repeat="entry in ctrl.array">{{entry.name}} </span> </div> <div> Entries that contain an "a": <span ng-repeat="entry in ctrl.filteredArray">{{entry.name}} </span> </div> </div>
script.js:
angular.module('FilterInControllerModule', []). controller('FilterController', ['filterFilter', function(filterFilter) { this.array = [ {name: 'Tobias'}, {name: 'Jeff'}, {name: 'Brian'}, {name: 'Igor'}, {name: 'James'}, {name: 'Brad'} ]; this.filteredArray = filterFilter(this.array, 'a'); }]);
Das Ergebnis ist:
All entries: Tobias Jeff Brian Igor James Brad Entries that contain an "a": Tobias Brian James Brad
Benutzerdefinierte Filter erstellen:
Das Schreiben Ihres eigenen Filters ist sehr einfach: Registrieren Sie einfach eine neue Filter-Factory-Funktion in Ihrem Modul. Intern wird hier filterProvider verwendet. Diese Factory-Funktion sollte eine neue Filterfunktion mit dem Eingabewert als erstem Argument zurückgeben. Eventuelle Filterparameter werden als zusätzliche Parameter an die Filterfunktion übergeben.
Diese Filterfunktion sollte eine einfache Funktion sein. Dies bedeutet, dass es zustandslos und idempotent sein sollte. Wenn sich die Eingabefunktion ändert, verlässt sich Angular auf diese Eigenschaften und führt den Filter aus.
Hinweis: Der Name des Filters muss ein gültiger Winkelausdrucksbezeichner sein. Zum Beispiel Großbuchstaben oder orderBy. Sonderzeichen sind im Namen nicht erlaubt, zum Beispiel sind Bindestriche und Punkte nicht erlaubt. Wenn Ihr Filter einen Namensraum haben soll, können Sie Großbuchstaben (myappSubsectionFilterx) oder Unterstriche (myapp_subsection_filterx) verwenden.
Der folgende Beispielfilter kehrt eine Zeichenfolge um. Darüber hinaus kann eine Bedingung hinzugefügt werden, um die Zeichenfolge in Großbuchstaben umzuwandeln.
index.html
<div ng-controller="MyController"> <input ng-model="greeting" type="text"><br> No filter: {{greeting}}<br> Reverse: {{greeting|reverse}}<br> Reverse + uppercase: {{greeting|reverse:true}}<br> Reverse, filtered in controller: {{filteredGreeting}}<br> </div>
script.js
angular.module('myReverseFilterApp', []) .filter('reverse', function() { return function(input, uppercase) { input = input || ''; var out = ""; for (var i = 0; i < input.length; i++) { out = input.charAt(i) + out; } // conditional based on optional argument if (uppercase) { out = out.toUpperCase(); } return out; }; }) .controller('MyController', ['$scope', 'reverseFilter', function($scope, reverseFilter) { $scope.greeting = 'hello'; $scope.filteredGreeting = reverseFilter($scope.greeting); }]);
Das Ergebnis ist:
No filter: hello Reverse: olleh Reverse + uppercase: OLLEH Reverse, filtered in controller: olleh
Zustandsbehaftete Filter
Es wird dringend empfohlen, Stateful-Filter zu schreiben, da diese nicht mit Angular optimiert werden können, was häufig zu Leistungsproblemen führt. Viele zustandsbehaftete Filter werden in zustandslose Filter umgewandelt, indem einfach der verborgene Zustand als Modell verfügbar gemacht und in einen Filterparameter umgewandelt wird.
Wenn Sie jedoch einen zustandsbehafteten Filter schreiben müssen, müssen Sie den Filter als $stateful markieren, was bedeutet, dass er während jedes $digest-Zyklus einmal oder mehrmals ausgeführt wird.
index,html
<div ng-controller="MyController"> Input: <input ng-model="greeting" type="text"><br> Decoration: <input ng-model="decoration.symbol" type="text"><br> No filter: {{greeting}}<br> Decorated: {{greeting | decorate}}<br> </div>
script.js:
angular.module('myStatefulFilterApp', []) .filter('decorate', ['decoration', function(decoration) { function decorateFilter(input) { return decoration.symbol + input + decoration.symbol; } decorateFilter.$stateful = true; return decorateFilter; }]) .controller('MyController', ['$scope', 'decoration', function($scope, decoration) { $scope.greeting = 'hello'; $scope.decoration = decoration; }]) .value('decoration', {symbol: '*'});
Das Ergebnis ist:
No filter: hello Decorated: *hello*
Das nächste Mal werde ich einen Artikel über die allgemeine Verwendung von Filtern in AngularJS schreiben.

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



VUE3 ist derzeit ein beliebtes Framework in der Front-End-Entwicklung. Die von ihm bereitgestellten Grundfunktionen können die Effizienz der Front-End-Entwicklung erheblich verbessern. Unter diesen sind Filter ein sehr nützliches Werkzeug in VUE3. Mithilfe von Filtern können Daten einfach gefiltert, gefiltert und verarbeitet werden. Was sind Filter? Einfach ausgedrückt sind Filter in VUE3 Filter. Sie können zur Verarbeitung der gerenderten Daten verwendet werden, um wünschenswertere Ergebnisse auf der Seite zu präsentieren. Filter sind einige

Javascript ist eine sehr einzigartige Sprache, was die Organisation des Codes, das Programmierparadigma des Codes und die objektorientierte Theorie betrifft. Die Frage, ob Javascript eine objektorientierte Sprache ist, wird seit langem diskutiert Es gibt offensichtlich schon seit langem eine Antwort. Auch wenn Javascript seit zwanzig Jahren vorherrscht, schauen Sie sich einfach das „Black Horse Cloud Classroom JavaScript Advanced Framework“ an, wenn Sie beliebte Frameworks wie jQuery, Angularjs und sogar React verstehen möchten Design-Video-Tutorial“.

Vue.js ist ein beliebtes JavaScript-Framework, das viele nützliche Funktionen und Tools bietet, um Front-End-Entwicklern bei der Entwicklung hervorragender Anwendungen zu helfen. Unter diesen sind Filter eine sehr nützliche Funktion in Vue.js, die zum Formatieren und Filtern von Daten verwendet werden kann. In Vue entsprechen Filter Pipelines in Vorlagen und können zum Verarbeiten und Transformieren von Daten verwendet werden. Beispielsweise können wir Filter verwenden, um das Datumsformat vom ursprünglichen Datum auf zu ändern

Im heutigen Informationszeitalter sind Websites zu einem wichtigen Instrument für Menschen geworden, um Informationen zu erhalten und zu kommunizieren. Eine responsive Website kann sich an verschiedene Geräte anpassen und den Benutzern ein qualitativ hochwertiges Erlebnis bieten, was zu einem Hotspot in der modernen Website-Entwicklung geworden ist. In diesem Artikel erfahren Sie, wie Sie mit PHP und AngularJS eine responsive Website erstellen, um ein qualitativ hochwertiges Benutzererlebnis zu bieten. Einführung in PHP PHP ist eine serverseitige Open-Source-Programmiersprache, die sich ideal für die Webentwicklung eignet. PHP bietet viele Vorteile, z. B. einfache Erlernbarkeit, plattformübergreifende Funktionalität, umfangreiche Toolbibliothek und Entwicklungseffizienz

Mit der kontinuierlichen Entwicklung des Internets sind Webanwendungen zu einem wichtigen Bestandteil des Informationsaufbaus in Unternehmen und zu einem notwendigen Mittel für Modernisierungsarbeiten geworden. Um die Entwicklung, Wartung und Erweiterung von Webanwendungen zu vereinfachen, müssen Entwickler ein technisches Framework und eine Programmiersprache wählen, die ihren Entwicklungsanforderungen entspricht. PHP und AngularJS sind zwei sehr beliebte Webentwicklungstechnologien. Sie sind serverseitige bzw. clientseitige Lösungen und können die Entwicklungseffizienz und das Benutzererlebnis von Webanwendungen erheblich verbessern. Vorteile von PHPPHP

Mit der Popularität des Internets nutzen immer mehr Menschen das Netzwerk, um Dateien zu übertragen und zu teilen. Aus verschiedenen Gründen kann die Verwendung herkömmlicher FTP- und anderer Methoden zur Dateiverwaltung jedoch nicht den Anforderungen moderner Benutzer gerecht werden. Daher ist die Einrichtung einer benutzerfreundlichen, effizienten und sicheren Online-Dateiverwaltungsplattform zu einem Trend geworden. Die in diesem Artikel vorgestellte Online-Dateiverwaltungsplattform basiert auf PHP und AngularJS. Sie kann problemlos Dateien hochladen, herunterladen, bearbeiten, löschen und andere Vorgänge ausführen und bietet eine Reihe leistungsstarker Funktionen wie Dateifreigabe, Suche,

Mit der rasanten Entwicklung der Webtechnologie ist die Single Page Web Application (SinglePage Application, SPA) zu einem immer beliebter werdenden Webanwendungsmodell geworden. Im Vergleich zu herkömmlichen mehrseitigen Webanwendungen besteht der größte Vorteil von SPA darin, dass die Benutzererfahrung reibungsloser ist und auch der Rechendruck auf dem Server erheblich reduziert wird. In diesem Artikel stellen wir vor, wie man mit Flask und AngularJS ein einfaches SPA erstellt. Flask ist ein leichter Py

Mit der Popularität von Webanwendungen erfreut sich das Frontend-Framework AngularJS immer größerer Beliebtheit. AngularJS ist ein von Google entwickeltes JavaScript-Framework, das Sie beim Erstellen von Webanwendungen mit dynamischen Webanwendungsfunktionen unterstützt. Andererseits ist PHP für die Backend-Programmierung eine sehr beliebte Programmiersprache. Wenn Sie PHP für die serverseitige Programmierung verwenden, bringt die Verwendung von PHP mit AngularJS dynamischere Effekte auf Ihre Website.
