如何在角度js中显示嵌套列表

use*_*127 2 angularjs

我有这个HTML代码用于学生记录和它的工作好

<li ng:repeat="student in students">
        <a href='#/student/{{ student.id }}'>{{ student.number }}</a>
</li>
Run Code Online (Sandbox Code Playgroud)

但我有几个嵌套级别的细节,我想这样显示

<ul>
<li ng:repeat="student in students">
            <a href='#/student/{{ student.id }}'>{{ student.number }}</a>
             if {{ student.subjects}} > 0
              //some indenting
                 <ul>
             <li ng:repeat="subject in subjects">
                        <a href='#/student/subject/{{ subject.id }}'>{{ subject.name }}</a>
                         if {{ subjects.assignments}} > 0
                         <ul>
                         <li ng:repeat="subject in subjects">
                        <a href='#/student/subject/assignment/{{ assignment.id }}'>{{ assignment.name }}</a>
                        <li>
                         </ul>
            <li>
             </ul>
        </li>
        </ul>
Run Code Online (Sandbox Code Playgroud)

但我不知道角度语法,我该怎么做

Ste*_*wie 6

您可以在子UL元素上使用ng-show,并在其自己的ng-repeat中迭代每个级别.注意:你不需要像if {{ student.subjects}} > 0(那不是一个有效的JS代码顺便说一句).如果集合为空,ngRepeat将不会迭代:

<ul>
  <li ng-repeat="student in students">
    <a href='#/student/{{ student.id }}'>{{ student.number }}</a>
    <ul ng-show="student.subjects && student.subjects.length">
      <li ng-repeat="subject in student.subjects">
        <a href='#/student/subject/{{ subject.id }}'>{{ subject.name }}</a>
          <ul ng-show="subject.assignments && subject.assignments.length">
            <li ng-repeat="assignment in subject.assignments">
              <a href='#/student/subject/assignment/{{ assignment.id }}'>{{ assignment.name }}</a>
            <li>
          </ul>
      <li>
    </ul>
  </li>
</ul>
Run Code Online (Sandbox Code Playgroud)