工厂中的AngularJS持久对象

拉斐尔88

我只是在想我 我不明白下面的代码是如何工作的。

我有一个工厂,内部有一个名为“产品”的属性,另一个名为“订单”。有两种方法,一种叫做“ list()”,它返回“ products”属性,另一种叫做“ orderList()”,它返回“ order”。另外,它还有一个名为“ add()”的方法,该方法从“产品”列表中获取“产品”,并在工厂内部填充“订单”列表。之后,我有两个控制器和两个列表。一个控制器用于可用产品(“产品”属性),另一个控制器用于购物车(“订单”属性)。

在每个控制器的开头,我有$ scope.productsList = Product.list(),在另一个控制器中,有$ scope.productsOrder = Product.orderList()。

产品从产品列表开始。订单开始为空。那很完美。

当我点击+1时,这两项将更改为“订单”列表。而且不知道为什么。

这是代码:http : //codepen.io/anon/pen/lFLbH

乔尔·杰斯克

我相信您是在问为什么商品清单和购物车中的金额都发生变化。如果是这样,我的答案就是给你的。它是基本的JavaScript,您在内存中引用的是同一对象,因此在两个视图中都将更新。为避免这种情况,您可以在将对象添加到购物车之前对其进行复制。

更改将对象添加到购物车的行,以复制对象。

 order[product.slug] = angular.copy(newProduct);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将数据对象注入AngularJS中的指令工厂

来自分类Dev

从angularjs工厂检索对象属性

来自分类Dev

AngularJS获取工厂对象的实例

来自分类Dev

JSON对象作为angularjs工厂

来自分类Dev

THIS在工厂中的AngularJS范围

来自分类Dev

ADF中的持久对象

来自分类Dev

在AngularJS工厂中访问$ scope?

来自分类Dev

AngularJS中的变量缓存(工厂)

来自分类Dev

AngularJS工厂中的JavaScript范围

来自分类Dev

如何从使用 angularjs 中的 api 获取数据的工厂获取控制器中的对象数据

来自分类Dev

在工厂中遍历注入的对象

来自分类Dev

AngularJS:如何从工厂返回可重用的对象?

来自分类Dev

AngularJS工厂getter和setter对象

来自分类Dev

AngularJS:从工厂通过id获取对象

来自分类Dev

如何在AngularJS工厂中重用函数?

来自分类Dev

在AngularJS的同一模块中访问工厂

来自分类Dev

在angularjs中未定义工厂

来自分类Dev

在AngularJS中创建工厂而不是Singleton

来自分类Dev

angularjs中工厂方法的空数组

来自分类Dev

如何在angularjs中从工厂调用ajax?

来自分类Dev

在AngularJS的同一模块中访问工厂

来自分类Dev

使用工厂在AngularJS中显示数据

来自分类Dev

在Angularjs中从多个工厂获取数据的问题

来自分类Dev

AngularJS:工厂中的调用Promise方法

来自分类Dev

如何在工厂angularJS中监视字段

来自分类Dev

angularjs中工厂方法的空数组

来自分类Dev

使AngularJS中的工厂JS变量全局可用

来自分类Dev

如何在angularjs工厂中调用函数

来自分类Dev

如何在 Angularjs 中调用嵌套工厂?