Es ist ein Anwendungsfall, der sehr beliebt ist, wenn internationale Erstellen von Web-Anwendung:Wie lokalisierte Vorlagen (templateUrl) in dem Routing mit AngularJS bekommen
Es gibt für jede Kultur lokalisierten Vorlagen, mit Namenskonvention wie ‚en_US/name .html ',' ru_RU/name.html 'usw.
Die Gebietseinstellung des Benutzers kann nur abgerufen werden, nachdem der Benutzer angemeldet ist (oder der Benutzer kann das Gebietsschema auswählen).
Also die beste Option, die ich gefunden habe, ist die Bereitstellung Lokalisierungswert mit DI (so könnte es überall aktualisiert werden - oder wenn ich Antwort von Backend mit Benutzerkonfiguration erhalten, oder wenn Benutzer etwas auswählen).
Routing konnte jedoch nur im Konfigurationsschritt konfiguriert werden, wo "Werte" nicht injiziert werden konnten. Sie können daher nicht die Gebietsschema-Konfiguration injizieren und TemplateUrl entsprechend diesem Wert hinzufügen.
Hier ist eine Plnkr example meine Lösung zu veranschaulichen.
Nur andere Lösung, die ich sehe, ist die private Route von Routen zu ändern (mit $ route.routes []), aber es klingt wie hässlich hacken.
Gibt es andere Lösungen, um diesen häufigen Anwendungsfall der Verwendung von lokalisierten Vorlagen zu implementieren?
Tatsächlich werden alle Kopien von Vorlagen in meinem Projekt im Backend unter Verwendung des Standard-Internationalisierungsansatzes von Razor generiert. Ich habe also eine Vorlage mit Inhalt wie '