2017-10-23 6 views
3

Was ist die beste Vorgehensweise zum Hinzufügen von Unterstützung von rechts nach links (rtl) in eine lokalisierte Angular 2+ App (z. B. für Hebräisch und Arabisch)? Ich habe mehrere Tutorials durchgesehen, darunter Internationalization (i18n), aber davon scheint keiner zu berichten. Ich würde erwarten, dass zum Beispiel die HTML-Richtungseigenschaft (z. B. <html dir="rtl">) zusammen mit Übersetzungen, die in 18n-Attributen definiert sind, im Build-Schritt der App hinzugefügt wird.Angular 2+ Lokalisierung (i18n) rtl Unterstützung

Antwort

4

Es ist möglich, i18n-dir als described in the docs hinzuzufügen. So ist der beste Ansatz, den ich bisher gefunden ist hinzuzufügen i18n-dir dir="ltr" (wo ltr ist eine Standard-Richtung) mit dem Wurzelelement in der die Stammkomponente Vorlage (zB app.component.html) etwa so:

<div i18n-dir dir="ltr"> 
    <!-- The rest of the content --> 
</div> 

Sobald Sie Übersetzungsdateien erzeugen ein entsprechender trans-unit wird in jedem von ihnen mit source angezeigt, der Standardrichtung enthält, die in diesem Fall ltr ist. Sie müssen also nur target des Geräts für die entsprechenden Sprachen auf rtl einstellen.

+0

Wie diese Lösung, funktioniert und elegant! Vielen Dank! – galvan

+0

Glücklich, @galvan zu helfen –

Verwandte Themen