angularjs递归ng-include onload变量更改时不刷新

时间:2014-05-30 00:10:27

标签: angularjs angularjs-ng-repeat angularjs-ng-include

鉴于以下示例:

http://jsfiddle.net/8LhJH/

我能解释的最简单方法是使用交互步骤......

问题案例:

  1. 选择第1项,我在第2栏中看到item1.items
  2. 选择第2项,我在框2中看到item1.items了! (应该是方框2中的item2.items)
  3. 功能案例:

    1. 选择第1项,我在第2栏中看到item1.items
    2. 选择--Root--,删除方框2
    3. 选择第2项,我在第2栏中看到item2.items
    4. 我认为问题出在ng-include递归的某个地方......

      <div ng-if="level < path.length && path[level] && cItem.items[path[level]] && cItem.items[path[level]].items" ng-include="'item_select_recur.html'" onload="cItem=cItem.items[path[level]];level=level+1;"></div>
      

1 个答案:

答案 0 :(得分:0)

解决了!

http://jsfiddle.net/8LhJH/1/

神奇之处在于手动更新方框2的范围(请参阅jsfiddle以获取完整示例):

nextElement.scope().cItem = parentItem.items[$scope.path[level]];