gpt4 book ai didi

javascript - 在 AngularJS 应用程序中本地保存数组数据,以便在两个应用程序之间共享

转载 作者:行者123 更新时间:2023-12-02 16:55:22 24 4
gpt4 key购买 nike

我有一些数组数据 var requests = [];,我想在两个 AngularJS 应用程序之间保留和共享它们。 2 个应用程序意味着一个用于前端,第二个用于管理端。两端加载时都会加载整个页面。

我尝试使用以下代码来共享数据,但它似乎不起作用:

.factory('QueryService', function() {
var queries = [];
var factory = {};
//..
factory.addQuery = function(query) {
queries.push(query);
localStorage.setItem('queries', JSON.stringify(queries));
console.log(JSON.parse(localStorage.getItem('queries')));
return JSON.parse(localStorage.getItem('queries'));
};
//..
return factory;
}

使用上述代码,我仅获得添加到 queries 数组中的最后一个元素。

我还使用 angular-local-storage 尝试了以下操作但我仍然得到相同的结果。

.factory('QueryService', ['localStorageService', function(localStorageService) {
var queries = [];
var factory = {};
//..
factory.addQuery = function(query) {
queries.push(query);
localStorageService.set('queries', queries);
console.log(localStorageService.get(('queries')));
return localStorageService.get(('queries'));
};
//..
return factory;
}

我需要数组查询数据在前端应用程序和管理端可用。

有人可以帮我吗?

最佳答案

使用工厂为特定工厂设置私有(private)变量,然后您可以设置并获取该私有(private)变量的值。

如果需要,您也可以创建另一种方法来清除查询变量。

    .factory('QueryService', function () {
var queries = [];
var factory = {};

return {
addQuery : function (query) {
queries.push(query);
localStorage.setItem('queries', JSON.stringify(queries));
console.log(JSON.parse(localStorage.getItem('queries')));
return JSON.parse(localStorage.getItem('queries'));
},
fetchQuery : function ( ) {
return localStorage.getItem('queries');
}
};
});

关于javascript - 在 AngularJS 应用程序中本地保存数组数据,以便在两个应用程序之间共享,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26221784/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com