从子控制器

时间:2015-11-08 15:04:59

标签: javascript angularjs

我在parentCtrl中有一个对象$ scope.object,我有一个独立的范围指令。在inside指令中,我有一个功能,我需要进行API调用并获取$ scope.object的属性之一(此属性是一个对象数组)并在原始$ scope.object中替换此属性。

我已经尝试了各种方法,但不知怎的,我并没有完全了解它。我尝试使用$ scope。$ parent.object从指令的控制器更新它。 在此之后,我尝试将获取的数组发送到父控制器并在那里替换它。

一旦$ scope.object得到更新,该指令应该运行,因为指令的模板绑定了$ scope.object的属性。 有趣的是,视图会使用新数据进行更新,但原始对象中的数据会以某种方式再次变为空。

我想,我的指令被调用的方式存在一些问题,因为同一个指令是嵌套调用的。如下图所示:

<li ng-repeat="t in A" ng-if="t.selected">
 <div directive> <div>
</li>

其中,A是fetched属性,t.selected为true。现在在获取的数据中,对于数组的两个元素,t.selected为true,而指令被调用4次,每个元素两次。在第一次迭代中,数据在父对象中保持不变,而在第二次迭代中,数据变为空

我想知道,如何永久更新父对象的数据

指令:

<li ng-repeat="(key, t) in fetch.data>
       <div layout="row" layout-wrap directive  target="t" ></div>

</li>

并且此目标在指令范围内与父范围

进行双向绑定

0 个答案:

没有答案