Ember Format
[WIP] Ember Format requires Ember 1.10.0 (in beta)
Ember Format
allows developers to internationalize their ambitious applications.
The formatting capabilities rely on the set of FormatJS's core libraries and Intl
's formatting objects:
These APIs are built on the following industry standards:
Installation
Install from the project's folder.
$ ember install:addon ember-format
Generate application's default locale with CLDR data (and any other).
$ ember generate locale en
Register default locale in the configuration file.
APP: {
LOCALE: 'en'
}
Usage
Set Up a Locale
export default {
locales: 'en',
messages: {
car: 'a car'
},
formats: { }
};
Route's model
import Ember from 'ember';
export default Ember.Route.extend({
model: function() {
return {
createdAt: Date.now(),
price: 1234,
currency: 'USD',
ago: Date.now() - (24 * 60 * 60 * 1000)
};
}
});
Template Helpers
{{! templates/index.js }}
{{format "number" 1234}}
{{format-date model.createdAt}}
{{format-message "car"}}
{{format-number model.price style="currency" currency=model.currency}}
{{format-relative model.ago}}
You can also specify formatting options using a single attribute options
.
- visit
dummy
application in this repository for more examples
Change Application's Locale
A locale is a service injected by default into:
- application,
- route,
- controller,
- component,
- view.
To change current locale, set the code
property with one of the available locale's codes:
changeLocaleToCzech: function() {
var locale = this.get('locale');
locale.set('code', 'cs');
}
Contribution
License
Ember Format is available under the MIT license. See the LICENSE file for more info.