Jest bibliotekę I18n dla Ember: zendesk/ember-i18n.
Jest pomocnikiem kierownica t
które obsługuje internacjonalizację patrząc w górę ciąg od Em.I18n.translations
:
Em.I18n.translations = {
'dog.walk.one': '1 dog has gone for a walk.',
'dog.walk.other': '{{count}} dogs have gone for a walk.'
};
a następnie można użyć ciąg w szablonie kierownicy poprzez:
{{t dog.walk countBinding="dogCount"}}
kodu powyżej jest niesprawdzony i właśnie wzięty z dokumentacji w README.
Innym JS I18n biblioteki znalazłem jest Alex Sexton na messageformat.js.
To zależy od złożoności Ciebie aplikacja, ale można również użyć właściwości obliczoną na to, patrz http://jsfiddle.net/pangratz666/pzg4c/:
Kierownice:
<script type="text/x-handlebars" data-template-name="dog" >
{{dogCountString}}
</script>
JavaScript:
Ember.View.create({
templateName: 'dog',
dogCountString: function() {
var dogCount = this.get('dogCount');
var dogCountStr = (dogCount === 1) ? 'dog has' : 'dogs have';
return '%@ %@ gone for a walk.'.fmt(dogCount, dogCountStr);
}.property('dogCount')
}).append();
Spójrz na http://stackoverflow.com/questions/48726/best-javascript-i18n -techniques-ajax-daty-czasy-liczby-waluty – Reactormonk