- Documentation : Out of the box support
- Documentation : ngx-translate library
The default approach in Angular is to generate the app for different target languages at compile time. The app will still have a single codebase, but the ng cli tools will output a separate copy for each language. Language switching requires page reload, and should be handled either via different directories (/en/, /fr/), or querystring parameters (?language=en, ?language=fr).
ngx-translate is a more robust option than the out-of-box behavior. This allows loading translations from a remote server, or defining them locally.