see https://github.com/angular-translate/angular-translate.
-
language files in json format in i18n/ directory. example en.json:
{ "HOME.TITLE": "Hello World!", "HOME.BANNER_TEXT": "Lorem ipsum dolor sit amet" }
-
configuration
angular.module('my-app', [ 'pascalprecht.translate' ])... .config(['$translateProvider', function($translateProvider) { $translateProvider.useStaticFilesLoader({ prefix: 'i18n/', suffix: '.json' }); $translateProvider.preferredLanguage('en'); ...
-
set language in controller:
.controller('AppCtrl', function($scope, $translate) { $scope.setLanguage = function(lang) { $translate.use(lang); if (!$scope.$$phase) { $scope.$apply(); } }; ...
-
translate in view
<h1>{{ 'HOME.TITLE' | translate }}</h1>
-
translate in js
var label = $filter('translate')('HOME.TITLE');