gpt4 book ai didi

javascript - ng-repeat 显示 json 对象 Angular JS

转载 作者:行者123 更新时间:2023-12-03 09:48:26 25 4
gpt4 key购买 nike

我有一个通过一项服务从 json 文件中获取的项目列表。在列表末尾,您可以通过一个按钮将每个项目添加到包含您单击/添加的元素的列表中。仅当不超过可用商品数量时,您才可以添加相同的商品。

我编写了一个代码,基本上每次添加项目时都会创建一个对象,问题是对象构建不太容易迭代( I have made another question regarding this problem.. )。当我在 View 上渲染时,它看起来像一种对象字符串化

这是部分代码:

View :

<div ng-repeat="session in sessiones">
Date: {{session.date | dateformated }} &nbsp
Availability: {{session.availability}} &nbsp
<a ng-click="addItem($index, event, session);" ng-show="addMore"> [Add to cart] </a>

<div ng-repeat="(key, value) in cartItems">
<h1> {{value.sessions}})</h1>
</div>

Controller 中的功能:

$scope.addItem = function(index, event, session) {
if (session.availability>0){
$scope.cartItems = $scope.cartItems || {};
$scope.cartItems[event.id] = $scope.cartItems[event.id] || {title:event.title, sessions:{}}
$scope.cartItems[event.id].sessions[session.date] = $scope.cartItems[event.id].sessions[session.date] || {num:0}
$scope.cartItems[event.id].sessions[session.date].num++;
session.availability-=1;
console.log($scope.cartItems);
}
}

Here's my try on fiddle

重要更新--->这是一个很好地说明了我想要做的事情的示例:完全相同,但当元素已经在列表中时,我必须计算它出现的次数,而不是重复元素已添加

Simple cart list

最佳答案

我修好了。 Fiddle

  • 我没有看到 ADD+ 链接,所以我一直使用它直到它出现。
  • 我怀疑索引有问题,但没问题。
  • 我注意到 $scope 在 JavaScript 中是不同的颜色,然后注意到您将 addItem 分配给了不是您的 Controller 的东西。

所以最后我只是将其移至底部,包含 addItem:

});

关于javascript - ng-repeat 显示 json 对象 Angular JS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30948240/

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