Angularjs data-ng-repeat 不起作用

Posted

技术标签:

【中文标题】Angularjs data-ng-repeat 不起作用【英文标题】:Angularjs data-ng-repeat is not working 【发布时间】:2014-03-10 11:03:48 【问题描述】:

我有以下代码,让你知道我是 angularjs 的新手

<!DOCTYPE html>
<html data-ng-app="">
<head>
    <!-- <script src="scripts/angular.js"></script>-->
    <title>Angular js</title>
</head>
<body data-ng-init="names=['Ran','Run','Run']">

    <br />
    <ul>
        <li data-ng-repeat="personName in names">personName</li>
    </ul>

    <script src="scripts/angular.min.js"></script>
</body>
</html>

li 中的名称没有显示任何值..... 解决问题的任何帮助或建议

【问题讨论】:

【参考方案1】:

如果你打开浏览器的控制台,你会看到错误:

Duplicates in a repeater are not allowed. 

Use 'track by' expression to specify unique keys. Repeater: personName in ['Ran','Run','Run'], Duplicate key: string:Run

数组中有两个相同的项目(运行)。

从数组中删除最后一个“运行”,它会正常工作。

请看: Plunker

【讨论】:

或者在重复表达式的末尾添加'track by $index'【参考方案2】:

请从您的data-ng-init 中删除一个'Run'

它会正常工作..

<!DOCTYPE html>
<html data-ng-app="">
<head>
    <!-- <script src="scripts/angular.js"></script>-->
    <title>Angular js</title>
</head>
<body data-ng-init="names=['Ran','Run']">

    <br />
    <ul>
        <li data-ng-repeat="personName in names">personName</li>
    </ul>

    <script src="JS/angular-1.2.10.min.js"></script>
</body>
</html>

【讨论】:

以上是关于Angularjs data-ng-repeat 不起作用的主要内容,如果未能解决你的问题,请参考以下文章

AngularJS 将字符串作为函数传递给 ng-click

ng-repeat过滤器不过滤掉空值

角度获取过滤后的 ng-repeat 的长度

一篇入门AngularJS

AngularJS学习之旅—AngularJS 服务

初识AngularJS