An Angular library to translate messages, dates and numbers.
This library is for localization of Angular 2+ apps written in TypeScript, ES6 or ES5. It allows, in addition to translation, to localize numbers and dates of your app, adding language code, country code, and optionally script code, numbering system and calendar, through Internationalization API. It also implements the validation of numbers by locales.
Sample app built with Angular Material, AoT compilation & webpack, and its source code.
Get the changelog by releases.
Feature | Angular Native | ngx-translate External library | angular-l10n External library |
---|---|---|---|
Messages | Html attribute, message ID | directive, impure pipe | directive, pure pipe |
File formats | XLIFF, XMB/XTB | JSON | JSON |
No bootstrap (when language changes) | no | yes | yes |
Getting the translation in component class | not yet | yes | yes |
Numbers | pure pipe via Intl | - | directive & pure pipe via Intl |
Dates | pure pipe via Intl | - | directive & pure pipe via Intl |
Validation | - | - | numbers validation |
You can add angular-l10n
to your project using npm
:
npm install angular-l10n --save
System.config({
map: {
'angular-l10n': 'node_modules/angular-l10n/bundles/angular-l10n.umd.js'
}
});
No need to set up anything, just import it in your code.
No need to set up anything, just import it in your code.
If you build apps in Angular using ES5, you can include the umd
bundle in your index.html
:
<script src="node_modules/angular-l10n/bundles/angular-l10n.umd.js"></script>
and use global ng.l10n
namespace.
This library is compatible with AoT compilation & Server-side prerendering.
See quick start and library specification.
Angular Localization with an ASP.NET CORE MVC Service @damienbod
In order to build the library if you want to contribute to it:
npm install
npm test
npm run build
To test locally the npm package:
npm run pack-lib
Then you can install it in your app to test it:
npm install [path]angular-l10n-[version].tgz
MIT