我正在使用angular-ui-tree

我在树状视图中拥有的对象具有排序索引。我正在寻找一种使用类似于以下内容的方法来将该排序索引绑定到treeview范围的desIndex:

ui-tree-desIndex="node.sortIndex"


desIndex是树视图节点的索引,而node.sortIndex是我对象的索引。

我希望它按对象的值对列表进行排序,当我在树形视图中移动对象时,范围将像下面这样更新该对象的索引:

<div ui-tree="treeOptions" callbacks="treeOptions">
    <ol ui-tree-nodes="" data-nodrop-enabled="true" ng-model="rootNodeLst" callbacks="treeOptions" id="tree-root">
        <li ng-repeat="node  ui-tree-desIndex="node.sortIndex" in rootNodeLst" callbacks="treeOptions" ui-tree-node ng-include="'nodes_renderer.html'"></li>
    </ol>
</div>


上面的代码不起作用,如何解决?

最佳答案

改变这个

<li ng-repeat="node  ui-tree-desIndex="node.sortIndex" in rootNodeLst" callbacks="treeOptions" ui-tree-node ng-include="'nodes_renderer.html'"></li>


对此

<li ng-repeat="node in rootNodeLst" ui-tree-desIndex="node.sortIndex" callbacks="treeOptions" ui-tree-node ng-include="'nodes_renderer.html'"></li>


首先,使您的ng-repeat工作。

然后,如果ui-tree-desIndex没有获得设置的值,则可以尝试:

ui-tree-desIndex="{{node.sortIndex}}"ng-attr-ui-tree-desIndex="{{node.sortIndex}}"

请参见this JSFiddle。

09-11 18:17