gpt4 book ai didi

javascript - 将 'n' 项添加到本地存储(项从 json 文件获取)

转载 作者:行者123 更新时间:2023-12-03 00:42:48 24 4
gpt4 key购买 nike

我正在从 json 文件获取信息,并且我需要在本地存储上存储一些项目。

这是我从 json 文件获取数据的代码:

    $scope.selection = "Selecciona una categoría";

$scope.filterAvailable = function(available){
var filteringBy = [];

$http.get('/app/json/file.json')
.then(function(data){
$scope.listOfProducts = data.data.products;

for(var i = 0; i< $scope.listOfProducts.length; i++){
if($scope.listOfProducts[i].available === true && $scope.listOfProducts[i].sublevel_id === $scope.inside){
filteringBy.push($scope.listOfProducts[i]);
}
}

$scope.dataOnFilter = filteringBy;
});
}

通过 ng-repeat,我在 html View 上显示信息:

<ul>
<li ng-repeat="data in dataOnFilter"><a ng-click="selected(data)">{{data.name}}</a>
</ul>

然后,我捕获特定值并通过单击 <a> 保存在本地存储上。用下一段代码标记:

    $scope.selected = function(y){
$scope.dataAdd = y;

localStorage.setItem('valid', JSON.stringify($scope.dataAdd));
}

如果我想在模态上查看所选信息,只需单击另一个按钮:

    $scope.openCart = function(){
$scope.myItems = JSON.parse(localStorage.getItem('valid'));

$('#cart').modal({
show: true
});
}

如果我选择一项,一切都是完美的,但是,如果我选择另一项,信息就会被重写。我需要的是将所有选定的项目存储在本地存储中。

有人可以帮助我吗?

我正在使用 AngularJs 和 Javascript。

最佳答案

您应该将数据存储为数组而不是对象。此函数将选定的值添加到名为集合的数组中。

$scope.selected = function(y) {
$scope.dataAdd = y;

localStorage.collection = localStorage.collection || "[]";
var collection = JSON.parse(localStorage.collection);
collection.push($scope.dataAdd);
localStorage.collection = JSON.stringify(collection);
}

关于javascript - 将 'n' 项添加到本地存储(项从 json 文件获取),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53369128/

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