在没有jQuery的情况下在angularjs的类中找到所有具有ul / uls的li

时间:2018-10-12 07:57:37

标签: html css angularjs angularjs-jqlite

基本上,我想获取所有带有ul的li's,然后向其添加一个图标。例如:

PhotoCapabilities

在上述情况下,我想更改<ul class="parent"> <li>child1</li> <ul> <li>grandchild1</li> </ul> <li>child2</li> </ul> 而不是li-child1的颜色

我不想使用jquery。 我可以只用angularjs做到吗?

1 个答案:

答案 0 :(得分:0)

如果您使用范围内的值,则应该很容易。如果在您的控制器中有以下内容:

ctrl.parent = {
    name: 'toto',
    childs: [{
      name: 'tata',
      childs: [{
        name: 'titi'
      }]
    }, {
      name: 'tutu'
    }]
  }

然后您可以使用ng-repeat在html中对其进行循环:

<li class="child" ng-repeat="child in $ctrl.parent.childs">
  <span ng-bind="child.name"></span>
<li>

您还可以根据该孩子也有孩子的事实添加一个类:

ng-class="{'withChilds': child.childs && child.childs.length >0}"

这是工作中的fiddle

最好的方法是创建一个组件,该组件将一个孩子作为入口并在其上循环

看到与组件相同的东西:fiddle