【问题标题】:ng-repeat over an array of objects对一组对象进行 ng-repeat
【发布时间】:2013-06-24 00:19:24
【问题描述】:

使用 ng-repeat,我将如何循环以下内容:

var  messages : [
      {text:"Standard Message"},
      {text:"Success Message!", type:"success"},
      {text:"Alert Message!", type : "alert"},
      {text:"secondary message...", type : "secondary"}
    ]

我试过了:

<p ng-repeat="message in messages">{{message}}</p> 

它似乎不起作用,我该怎么做?

【问题讨论】:

  • jsfiddle.net/aurDq .. 或阅读首页教程
  • 我不确定为什么这个问题被标记为离题,因为 OP 通过显示 html 标记显示了“他正在尝试做什么”,并且接受的答案显示了他所缺少的内容。虽然很原始,但我碰巧一直在 SO 上看到这样的问题,这是理所当然的,因为 OP 错过了一些非常微小的东西,他花了很多时间,其他人在那里指出了这个小错误。这个问题并不含糊,恕我直言,被标记为离题。

标签: javascript angularjs


【解决方案1】:

您需要将您的消息数组插入 $scope:

$scope.messages = [
      {text:"Standard Message"},
      {text:"Success Message!", type:"success"},
      {text:"Alert Message!", type : "alert"},
      {text:"secondary message...", type : "secondary"}
    ]

然后按如下方式使用:

<p ng-repeat="message in messages">{{message.text}}</p>

【讨论】:

  • 奇怪,现在 {{message}} 甚至可以正常工作。我正在寻找倾倒对象。哦,好吧,现在可以了,不知道出了什么问题..
  • @ChrisChevalier 我不明白你的问题,你能详细说明一下吗?
  • 他不懂X in Y。 @DorCohen,它正在遍历数组。对于$scope.messages 中的每个message - 它不是单数/复数。您可以使用任何变量(尽管这是一个非常常见的约定)。例如,它可以写成&lt;p ng-repeat="x in messages"&gt;{{x.text}}&lt;/p&gt;
猜你喜欢
  • 2017-03-17
  • 1970-01-01
  • 1970-01-01
  • 2017-04-07
  • 2014-03-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多