Как использовать angular-translate-loader-static-файлы в angularjs

Я установил angular-translate-loader-static-files с этой командной строкой bower install angular-translate-loader-static-files

после, я создаю файл JSON с этим именем messages_en.json в папке i18n

мой angular.module, как это:

   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");
});

в моем 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>

мой messages_en.json:

{
    "Accueil" : "welcome",
    "Livre" : "book",

}

но когда я запускаю приложение, слово "Livre" не переводится на английский

в чем проблема пожалуйста помогите мне

2 ответа

Решение

Ваша проблема в вашем файле JSON. Удалите последнюю запятую, и вы должны быть в порядке.

Примечание. Не добавляйте angular-translate-loader-static-files.js и angular-translate-loader-static-files.min.js. Выберите только один, чтобы сохранить.

Вы можете добавить следующий код, чтобы получить сообщение об ошибке, если ваш JSON-файл недействителен

$scope.changeLanguage = function (langKey) {
    $translate.use(langKey).then(function(){}, function(){toastr.error('JSON file is invalid')})
};

Другие вопросы по тегам