【问题标题】:AngularJS - ngStorage not saving data unlike cookieAngularJS - ngStorage 不像 cookie 那样保存数据
【发布时间】:2018-01-30 17:48:35
【问题描述】:

我们的任务是翻译语言,而这种变化应该反映在同一网站的其他打开的选项卡/窗口中。集成ngStorage插件,通过localstorage访问持久化数据

$scope.$storage = $localStorage;
        $localStorage.language = langKey; //EN/FR
        $scope.$watch(function () {
            return angular.toJson($localStorage);
        }, function () {
            $scope.language = $localStorage.language;
            $translate.use($localStorage.language); //translate language
});

上面的 sn-p 可以工作,语言翻译可以在标签和窗口中看到。但是当用户点击应用按钮时尝试保存语言,使用下面的代码似乎不起作用

$scope.close = function (response, selectedlanguage) {

        //user clicks on apply button and window to change language is closed
        if (angular.equals(response, 'Yes')) {

            $window.opener.angular.element('#langchange').scope().changeLanguage(selectedlanguage);
            $window.opener.angular.element(".logo-lg").trigger("click");
            $localStorage.language = selectedlanguage;
            $scope.language = $localStorage.language;
            $window.close('cancel');

        }
};

虽然使用$cookieStore.put('lang', selectedlanguage);$cookieStore.get('lang');,但我可以将语言保存在cookie 中,并在下次重新加载时获取它。

如何使用 ngStorage 插件 localstorage 实现相同的功能?

【问题讨论】:

标签: javascript angularjs local-storage


【解决方案1】:
var App = angular.module("App", ["angular-storage"]]); 


App.controller('LoginCtrl',function ($scope,store){
 data = {text: Test};
 store.set('token', data);
 console.log('Cookie',store.get('token'))
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-03-28
    • 2015-12-17
    • 2013-07-15
    • 1970-01-01
    • 1970-01-01
    • 2016-06-26
    • 1970-01-01
    • 2013-10-16
    相关资源
    最近更新 更多