Почему привязка в шаблоне не работает?
У меня есть вопрос относительно использования управления угловым деревом, почему {{node.label}} в приведенном ниже коде не привязывается успешно... Например, у меня есть собственный шаблон узла, как показано ниже:
<ul {{options.ulClass}}>
<li ng-repeat="node in node.{{options.nodeChildren}} | filter:filterExpression:filterComparator {{options.orderBy}}"
ng-class="headClass(node)"
{{options.liClass}}
set-node-to-data>
{{node.label}}
<i class="tree-branch-head" ng-class="iBranchClass()" ng-click="selectNodeHead(node)"></i>
<i class="tree-leaf-head {{options.iLeafClass}}"></i>
<i>
<b>
<div class="tree-label {{options.labelClass}}" ng-class="[selectedClass(), unselectableClass()]"
ng-click="selectNodeLabel(node)" tree-transclude></div>
</b>
</i>
<treeitem ng-show="nodeExpanded()"></treeitem>
</li>
</ul>
Здесь привязка {{node.label}} не работает, как я могу сделать ее привязкой.
Я создал простой plnkr, чтобы прояснить:
https://plnkr.co/edit/WdnJhmuZtibU0AyiDU3s?p=preview
Вопрос:
В строке 8 сценария plnkr "scripts.js" почему {{node.label}} плохо связывается.
В нашем проекте я часто использовал управление угловым деревом, в некоторых сценариях мы хотим иметь динамическое процентное значение перед значком узла. Вот почему мне нужно связывание здесь.
1 ответ
В HTML было использовано несколько неправильных выражений, которые не будут работать
{{options.ulClass}}
похоже, неправильно, angularjs не добавляет атрибут с помощью{{}}
(Интерполяция). Так должно бытьng-class="options.ulClass"
Также
ng-repeat
имеет неправильное выражениеng-repeat="node in node[options.nodeChildren] | filter:filterExpression:filterComparator(options.orderBy)"