如何在刷新我的页面后使用angularJS保留最后的翻译?
我刚刚开始学习angularJS,我想在我的应用程序中添加翻译选项 在我的第一次测试中,我用一个变量尝试了这个功能,用2个按钮表示两种不同的语言,本地语言是英语,第二种语言是法语,它可以工作,但问题是在刷新我的应用程序后,这个变量变成了本地语言。我怎样才能解决这个问题。这是我在angularJS上的代码如何在刷新我的页面后使用angularJS保留最后的翻译?,angularjs,cookies,translation,multilingual,angular-translate,Angularjs,Cookies,Translation,Multilingual,Angular Translate,我刚刚开始学习angularJS,我想在我的应用程序中添加翻译选项 在我的第一次测试中,我用一个变量尝试了这个功能,用2个按钮表示两种不同的语言,本地语言是英语,第二种语言是法语,它可以工作,但问题是在刷新我的应用程序后,这个变量变成了本地语言。我怎样才能解决这个问题。这是我在angularJS上的代码 'use strict'; var app = angular.module('app', ['pascalprecht.translate']); app.conf
'use strict';
var app = angular.module('app', ['pascalprecht.translate']);
app.config(function($translateProvider) {
$translateProvider.fallbackLanguage('en');
$translateProvider .translations('en', {
msg : 'Hello',
})
$translateProvider.translations('fr', {
msg : 'bonjour'
});
$translateProvider.preferredLanguage('en');
});
app.controller('Ctrl', function($translate, $scope) {
$scope.changeLanguage = function (langKey) {
$translate.use(langKey);
};
});
谢谢您可能需要使用某种
localStorage
服务来保存所选语言。您必须决定要实现哪种类型的持久化(按会话?按用户?),要选择要使用的最佳持久化模型…您应该使用一种方法在应用程序的生命周期内持久化数据 例如,您可以使用cookies 但是,如果您想以一种有角度的方式执行此操作,您可以从中使用
$localStorage
或$sessionStorage
还有其他存储库
之后,当用户刷新页面时,您可以进行检查
查看保存在会话($sessionStorage
)或浏览器($localStorage
)中的语言信息,并显示正确的语言
正如@MarcoS所说,如果你想展示另一个
特定用户的语言您应该存储和获取语言信息
从数据库
祝你好运 您可以在AngularJS中使用cookie来维护这些值。参见参考答案-