Reputation: 329
i installed angular-translate-loader-static-files
with this command line bower install angular-translate-loader-static-files
after ,i create a file json with this name messages_en.json
in folder i18n
my angular.module like this:
angular.module('starter', ['ionic', 'ngStorage', 'ngCordova','starter.services','ionic-datepicker','starter.directives','ion-google-place','ngAutocomplete','colorpicker.module','ui.calendar','ngLoadingSpinner','ionic-ratings','pascalprecht.translate'])
facebookExample.config(function($stateProvider, $urlRouterProvider, $translateProvider) {
$translateProvider.useStaticFilesLoader({
prefix: 'i18n/messages_',
suffix: '.json'
});
$translateProvider.preferredLanguage("en");
$translateProvider.fallbackLanguage("en");
});
in my index.html
<script type="text/javascript" src="lib/angular-translate/angular-translate.js"></script>
<script type="text/javascript" src="lib/angular-translate-loader-static-files/angular-translate-loader-static-files.js"></script>
<script type="text/javascript" src="lib/angular-translate-loader-static-files/angular-translate-loader-static-files.min.js"></script>
my messages_en.json:
{
"Accueil" : "welcome",
"Livre" : "book",
}
but when i run my application the word 'Livre' not translate into English
what's the problem please help me
Upvotes: 2
Views: 5260
Reputation: 583
You can add the follow code to get en error message, if your JSON-File is invalid
$scope.changeLanguage = function (langKey) {
$translate.use(langKey).then(function(){}, function(){toastr.error('JSON file is invalid')})
};
Upvotes: 0
Reputation: 721
Your problem is in your json file. Remove the last comma and you should be OK.
Note : Don't add angular-translate-loader-static-files.js and angular-translate-loader-static-files.min.js. Choose only one to keep.
Upvotes: 3