Ich suche eine Unterlegscheibe für die ECMAScript Internationalization API. Kennt jemand solch ein Projekt? (Auch wenn es momentan noch in Arbeit ist.)Gibt es ein i18n (Intl) Shim für JavaScript?
Antwort
Diese SO-Frage gibt einige Frameworks für i18n-Unterstützung in Javascript. https://stackoverflow.com/questions/9640630/javascript-i18n-internationalization-frameworks-libraries-for-client-side-use
Danke, aber ich suche gerade nach einem, der eine direkte Unterlage der [ECMAScript Internationalisierungs API] ist (http://www.ecma-international.org/ecma-402/1.0/). –
Ich nehme an, Sie wissen, dass "Google Chrome Version 24, derzeit in der Beta-Version, die API mit Collator-, NumberFormat- und DateTimeFormat-Objekten wie oben beschrieben implementiert." (siehe here). Jedes Shim wäre entweder riesig und/oder unvollständig in Bezug auf die Gebietsabdeckung - wollen Sie wirklich Kannada-Nummern implementieren (das ist die Sprache, die sie hier in Bangalore sprechen)?
Mein Vorschlag wäre, Ihre eigene abgespeckte Shim mit den Teilen, die Sie benötigen, auszuwählen und aus anderen Bibliotheken auszuwählen, die ähnliche Dinge nach Bedarf tun. Zum Beispiel möchten Sie vielleicht Datum/Uhrzeit formatieren, aber nicht sortieren (was kompliziert ist).
Ja, es gibt eine Polyfill für ECMA-402 (auch bekannt als ECMA Internationalisation API Specification), erhältlich unter https://github.com/andyearnshaw/Intl.js.
Für den Einsatz in Node.js-Anwendungen können Sie mit NPM installieren:
npm install intl
Es ist auch als Bower Komponente für die Front-End zur Verfügung:
bower install intl
Es gibt Unterstützung für NumberFormat
und DateTimeFormat
, aber keine Unterstützung für Collator
. Derzeit müssen Sie für Client-seitige Browserumgebungen die Gebietsschema-Daten mithilfe einer separaten Funktion hinzufügen. Weitere Informationen finden Sie in der Datei README.md.
Haftungsausschluss: @AndyE ist der Autor von Intl.js
.
Kommt Collator? Das ist das interessanteste bisschen für mich. – hippietrail
@ Hippietrail wahrscheinlich nicht. Ich habe untersucht, dass Collator bereits in der frühen Entwicklungsphase hinzugefügt wurde und große Downloads für den [DUCET] (http://en.m.wikipedia.org/wiki/Unicode_collation_algorithm) und die Sprachdateien des Benutzers erforderlich sind. Ich vermute, dass dies die meisten Leute abschrecken würde und das Problem wäre es am Ende nicht wert. –
Dies ist eine ziemlich ernste Lücke in etwas, das sich selbst als Polyfill für Intl bezeichnet. Sie könnten auch erwarten, dass die Leute davon ablenken, dass überhaupt keine Unterstützung für die Sortierung vorhanden ist. Collation scheint das unangenehme Stiefkind von Intl zu sein, aufgrund der Probleme, die Sie beschreiben (was sicherlich vernünftig ist). – pat
- 1. i18n für reagieren, formatjs, react-intl
- 2. Gibt es eine Möglichkeit, Schaltflächenformularfunktion in IE10 zu unterstützen/shim?
- 3. Intl.js Polyfill/Shim mit Webpack?
- 4. Internationalisierung (i18n) für Nummer, Datum & Währung (JavaScript)
- 5. getUserMedia() Shim für PhoneGap/Cordova?
- 6. Was ist ein Shim-Repository?
- 7. Requirejs mit Shim
- 8. Gibt es ein Set-Literal in JavaScript?
- 9. Gibt es ein JavaScript-Kompass-HTML-Widget?
- 10. Gibt es ein ähnliches JAVADOCS-Skript/Tool für Javascript-Dateien?
- 11. Gibt es ein Javascript-Äquivalent von. = Für die Verkettung?
- 12. Gibt es ein Äquivalent zu php.net für JavaScript?
- 13. Gibt es ein JavaScript/CSS-Komprimierungsprogramm für Visual Studio?
- 14. Gibt es ein Item-Limit für große Arrays in Javascript
- 15. Gibt es ein E-Commerce-Framework für Javascript
- 16. Gibt es ein Framework für Multiplayer-Brettspiele in JavaScript?
- 17. Kann Shim für System.Data.SqlClient.SqlDataReaderSmi generieren
- 18. HTML5 Shim Fallback?
- 19. Gibt es eine Calculus-Bibliothek für JavaScript?
- 20. i18n Dart Bibliothek für die Übersetzung läuft nicht
- 21. Gibt es ein mod_proxy-Äquivalent für Tomcat?
- 22. Gibt es eine hashmap-Bibliothek für JavaScript?
- 23. Gibt es ein Limit für setTimeout?
- 24. Shim für FileReader() in IE 9
- 25. Schienen i18n und Routen in Javascript
- 26. django KeyError für meine i18n Javascript-Katalog URL
- 27. Microsoft Fakes Shim für generische Methode
- 28. I18n Übersetzung mit i18n-active_record: dasselbe Formular für denselben Schlüssel
- 29. Javascript i18n mit gettext und .po Dateien
- 30. Verwenden des Renderers für i18n?
Vielleicht fragen Norbert Lindenberg direkt, wer ist der Herausgeber dieser Spezifikation – kangax
Warum nicht mit ISO-Standards gehen und vergessen Sie alle traditionellen mehrdeutigen Datumsformat, das meine Oma verwendet? (ISO-Daten, ISO-Währungscodes usw.). –
Gut zu wissen, @AndyE! Mach weiter so! Ich werde den Fortschritt verfolgen. –