繁体   English   中英

ng-repeat未知数量的嵌套元素

[英]ng-repeat unknown number of nested elements

我想知道是否有这种问题的简单解决方案。

我有一个对象注释,它可以包含注释,这些注释也可以包含注释......这可以继续进行未知数量的周期。

以下是数据结构的示例:

var comment = {
   text : "",
   comments: [
      { text: "", comments : []},
      { text: "", comments: [
         { text: "", comments : []},
         { text: "", comments : []}
         { text: "", comments : []}
      ]}
   ]
}

让我们说,我会写两个级别的评论:

<div ng-repeat="comment in comments">
   {{comment.text}}
   <div ng-repeat="comment in comments">
      {{comment.text}}
   </div>
</div>

我如何为“n”级嵌套注释实现我的div?

最简单的方法是创建一个通用部分,以便您可以使用ng-include递归调用和呈现它。

<div ng-include="'partialComment.html'" ng-model="comments"></div>

这是部分:

<ul>
    <li ng-repeat="c in comments">
      {{c.text}}
      <div ng-switch on="c.comments.length > 0">
        <div ng-switch-when="true">
          <div ng-init="comments = c.comments;" ng-include="'partialComment.html'"></div>  
        </div>
      </div>
    </li>
</ul>

数据模型应该是列表var comments = [{ ... }]

我为你创建了一个演示,并希望它有所帮助。

演示

你需要一个递归指令。 事情是这样 ,或者可能会更好这个

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM