0

我在 Javascript 中创建了一个树结构,不幸的是,它包含循环引用。(对象有一组子对象,但子对象需要对父对象的引用才能删除。)

由于树形结构,我使用角度深度手表来检测树的任何变化。(这避免了监视树的每个节点。)但是,循环引用会导致 Angular 的 $watch 结构出现问题。由于我的应用程序的一些设计要求,我看不到在不参考父母的情况下处理父母/孩子问题的方法。

我考虑过的一件事是将指向父级的链接存储为原型。我的问题 - Angular deep $watch 会查看自定义对象的原型成员吗?在某个地方有这个设置吗?

谢谢。

4

1 回答 1

0

另一种可能的解决方案:角度深度对象比较忽略以 $ 开头的函数和字段。

http://docs.angularjs.org/api/angular.equals

所以很明显 Angular 使用 $ 来存储它自己的元数据,但是你应该对像 obj.$my_parent 这样的东西很好。或者你可以用一个函数来分配所有东西...... obj.parent = function () { return other_obj; }

于 2013-06-27T16:47:48.643 回答