Ich untersuche verschiedene Übersetzungstools für meine Angular App. Bisher scheint angular-translate dafür eine gute Lösung zu sein. Es verwendet JSON-Dateien pro Sprache, die wie "lang / NAMESPACE / LANG.json" (z. B. "lang / user / de.json") strukturiert sind und wie folgt aussehen:
%Vor%Optional kann der JSON auch geschachtelt sein.
Das scheint einfach zu sein. Es ist jedoch etwas unpraktisch, wenn Sie neue Übersetzungen hinzufügen oder vorhandene ändern. Sie müssen verschiedene Sprachdateien hin- und herwechseln und es ist mühsam, eine Übersetzung für einen bestimmten Schlüssel zu finden. Der Vergleich verschiedener Übersetzungen ist ebenfalls unpraktisch.
Gibt es ein Tool, das lokale Übersetzungsdateien lesen kann und verschiedene Übersetzungen für jeden Schlüssel nebeneinander anzeigen kann? Entweder eine Anwendung (Mac OS-Unterstützung ist ein Muss) oder browserbasiert.
Ich habe das Gleiche selbst gebraucht und so habe ich es einfach so geschrieben:
Ich hatte zwei Dropdown-Listen mit vorhandenen Sprachen, von Sprache 1 bis Sprache 2 war die Idee.
beim Auswählen beider Sprachen Ich lese die JSON-Dateien in Arrays ein und zeige sie mit einem ng-repeat unter Verwendung von Zwei-Wege-Bindungen an. Wenn sich der Inhalt eines Eingabefeldes änderte, wurde das Array sofort aktualisiert.
Die Methode apply hat dann den Dateinamen und das Array in eine PHP-Datei hochgeladen, die sie in das Dokument geschrieben hat.
eng.json:
%Vor%mein html:
%Vor%mein Controller:
%Vor%Jsonfactory:
%Vor%Lesen Sie Ihren Ordner mit JSON-Dateien in Javascript in einige Arrays, Für jedes Array erstellen Sie einfach ein ng-repeat mit Eingabefeldern, so dass Sie den Schlüssel und alle Ihre Übersetzungen sehen. Wenn Sie Änderungen vorgenommen haben, erstellen Sie eine Schaltfläche, die Ihnen Array und den Dateinamen der Sprache an dieses PHP-Skript sendet: (Ich akzeptiere nur eine Sprache zu der Zeit)
%Vor%Es war wirklich sehr einfach zu erstellen, ich wollte es zu meiner Seite hinzufügen, so dass jeder beim Übersetzen helfen konnte, aber es kam nie dorthin.
Ich kann nicht den ganzen Code geben, aber ich denke, das sollte dir helfen.
Sehen Sie sich angle-translate an: Ссылка
für alle DIY-Leute:
Sie finden lokalisierte Dateien für angular: hier
Diese Dateien helfen Ihnen bei den eingebauten Winkelfiltern: Datum, Währung und Nummer. Erstaunlich ... so weit.
Nun möchten Sie Ihre eigenen Texte verwenden, denn alles, was Sie brauchen, ist die Macht der angle.js-Abhängigkeitsinjektion. Erstellen Sie eine neue Datei wie "myTexts_en_us.js" und verwenden Sie $ provide.value wie folgt:
%Vor%Für Details: Ссылка
Für den realen Gebrauch sollten Sie einen Filter hinzufügen: Ссылка
Tipps:
Tags und Links json localization internationalization translation angular-translate