在数组中重复

Repeating through an array

本文关键字:数组      更新时间:2023-09-26

我正在玩AngularJS,在数组迭代时遇到了一个问题。

我有下面的数据,其中包含一个名为tags的子项作为数组:

$scope.documents = [{
    title: 'My First Report',
    tags: ['report', 'test'],
    modified: (new Date())
}, {
    title: 'My Second Report',
    tags: ['report', 'test'],
    modified: (new Date())
}];

我要做的是遍历每个文档,然后遍历每个标签。

我能够通过documents迭代没有问题,但是当我尝试通过document上的tags属性循环时,它没有返回结果。

到目前为止,我已经尝试了以下方法,对我来说似乎是合乎逻辑的:
<li ng-repeat="document in documents">
  <p>{{document.title}}
    <li ng-repeat="tag in document.tags"> 
      <span>{{tag}}</span>
    </li>
   </p>
</li>

我做了一个JSFiddle来显示我遇到的问题:

查看JSFiddle Demo

我错过了什么吗?

您的语法不正确,您缺少ul,列表元素需要一个容器:

<div ng-app='AngularTestApp'>
    <div ng-controller="FileOpenCtrl">
        <ul class="unstyled">
            <li ng-repeat="document in documents">
                <p>{{document.title}}
                    <ul>
                        <li ng-repeat="tag in document.tags">
                            <span>{{tag}}</span>
                        </li>
                    </ul>
                </p>
            </li>
        </ul>
    </div>
</div>
演示:

http://jsfiddle.net/8VJ6S/3/