#javascript #jquery #angularjs #angular
#javascript #jquery #angularjs #angular
Вопрос:
Получение исключения в консоли при загрузке моей страницы для дерева. Также существует серьезная проблема с производительностью, из-за которой для загрузки дерева требуется не менее 30 секунд.
Html-страница
<div class="col-md-12">
<script type="text/ng-template" id="items_renderer.html">
<div ui-tree-handle>
<span ng-bind-html="item.name| highlight:pattern | trust"></span>
</div>
<ol ui-tree-nodes ng-model="item.items">
<li ng-repeat="item in item.childCategoryList" ui-tree-node
ng-include="'items_renderer.html'"
ng-click="pc.att(item.categoryId)"
ng-hide="!treeFilter(item,pattern,supportedFields) amp;amp; !dim"
ng-class="{'filtered-out':!pc.treeFilter(item,pattern,supportedFields) amp;amp; dim}">
</li>
</ol>
</script>
<div ui-tree>
<ol ui-tree-nodes ng-model="item.items">
<li ng-repeat="item in pc.catList" ui-tree-node
ng-include="'items_renderer.html'"
ng-hide="!treeFilter(item,pattern,supportedFields) amp;amp; !dim"
ng-class="{'filtered-out':!pc.treeFilter(item, pattern,supportedFields) amp;amp; dim}">
</li>
</ol>
</div>
</div>
controller.js
vm.catAttList = response.data.data.catAttList;
Консоль
angular.js:12783 TypeError: Cannot read property '0' of undefined
at Scope.e.init (localhost:8080/web/app/bower_components/angular-ui-tree-master/dist/angular-ui-tree.min.js:6:1243)
Комментарии:
1. <li ng-repeat=»элемент в item.childCategoryList» ui-tree-node=»» ng-include=»‘items_renderer.html ‘» ng-click=»pc.att(item.CategoryID)» ng-hide=»!treeFilter(элемент, шаблон, поддерживаемые поля) amp;amp;amp;amp; !dim» ng-class=»{‘filtered-out’:!pc.treeFilter(элемент, шаблон, поддерживаемые поля) amp;amp;amp;amp; dim}» class=»ng-scope angular-ui-tree-node»> —- Эта ошибкатакже отображается в консоли
2. Я нигде не вижу
vm.catAttList
в вашем шаблоне.3. @micronyks — оно фактически объявлено в контроллере. Я вызываю его в html, ссылаясь на имя контроллера.
4. где оно находится? тем не менее, я его не вижу.
5. @micronyks — я не опубликовал код контроллера. Это похоже на это — var vm = null; vm.catAttList = response.data.data.catAttList; Получение списка в качестве ответа