如何在 angularjs 中使用 angular-translate-loader-static-files
how to use angular-translate-loader-static-files in angularjs
我用这个命令行安装了 angular-translate-loader-static-files
bower install angular-translate-loader-static-files
之后,我在文件夹 i18n
中创建了一个名为 messages_en.json
的文件 json
我的 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' 没有翻译成英文时
有什么问题请帮帮我
您的问题出在您的 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')})
};
我用这个命令行安装了 angular-translate-loader-static-files
bower install angular-translate-loader-static-files
之后,我在文件夹 i18n
messages_en.json
的文件 json
我的 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' 没有翻译成英文时
有什么问题请帮帮我
您的问题出在您的 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')})
};