Ist es möglich Rohre zu haben, die sich wie unreine Rohre verhalten, aber nicht bei jedem gezündeten Ereignis ausgeführt werden sollen. Zum Beispiel möchte ich übersetzen Rohr, die nur auf einer Sprache Drop-down-Wert ÄnderungMischen zwischen reinen und unreinen Rohren in Angular 2
Antwort
ausgeführt werden Verwenden Sie einen Cache. Für jede Übersetzung das Original und die Übersetzung speichern.
Suchen Sie für jeden Aufruf der Pipe in den Cache, wenn es vorhanden ist, verwenden Sie andernfalls die Übersetzung, und speichern Sie sie im Cache.
Verwenden Sie einen injizierbaren Dienst, der den Cache speichert.
Wenn Sprache Dropdown ändern, entfernen die Cache;)
Diese Frage alt ist. Aber da es noch keine akzeptierte Antwort gibt, lass mich auch meinen Gedanken hinzufügen.
Sie können parameters zu der Rohrleitung hinzufügen. Wenn sich der Parameter ändert, ruft die Pipe die Funktion transform
auf.
Wie @Javier sagte, könnten Sie einen injizierbaren Dienst verwenden, um den verschiedenen Übersetzungscache zu speichern. In der Funktion transform
überprüfen Sie den Parameter und verwenden ihn als Schlüssel, um die Übersetzung aus dem Service zu erhalten.
- 1. Convert Zeitstempel auf dem neuesten Stand mit Angular 2 Rohren
- 2. Unterschied zwischen EventEmitter.next() und EventEmitter.emit() in Angular 2
- 3. Wie formatiert man das Datum als TT/MM/JJJJ in Angular 2 mit Rohren?
- 4. Was ist der Unterschied zwischen Rohren und Steckdosen?
- 5. Angular 2 und EventEmitter
- 6. Angular 2 und Jasmine
- 7. Redux und Angular 2
- 8. Angular 2 und i18n
- 9. Angular 2 und SignalR
- 10. Angular 2 und stripe.js
- 11. Was ist der Unterschied zwischen rein und unrein in Haskell?
- 12. Angular 2 Passing Wert zwischen den Komponenten
- 13. Angular 2 CurrencyPipe Leerzeichen zwischen Währung und Nummer?
- 14. Angular 2 - ViewEncapsulation.Native ist undefiniert in ES5
- 15. Wie funktioniert die Angular 2-Kommunikation zwischen Kind- und Elternkomponente?
- 16. Angular 2: Kommunikation zwischen Direktive und Host-Komponente
- 17. Angular 2 - Routing zwischen zwei bootstrapped Komponenten
- 18. Testen von Angular beim Mischen von $ q und ES6 verspricht
- 19. Wann @angular Tags in Angular 2 verwenden?
- 20. Angular 2, Kommunikation zwischen 2 Apps auf derselben Seite
- 21. Angular 2 - Liste der eingebauten Rohre und ihre Parameter?
- 22. NodeJS und angular 2 Projekt
- 23. Angular 2 und Kendo UI
- 24. Angular 2, Karma und PhantomJS
- 25. Angular 2-Komponenten und CRUD
- 26. Angular 2 Papiereingabe und Formularverarbeitung
- 27. Angular 2 und web apis
- 28. In ember.js, was ist der Unterschied zwischen mischen und erweitern?
- 29. "private" und "public" in Angular 2 Komponente
- 30. Routing und Navigation in Angular 2