Javascript 如何使用字符串在obj上运行ngRepeat

Javascript 如何使用字符串在obj上运行ngRepeat,javascript,angularjs,angularjs-ng-repeat,Javascript,Angularjs,Angularjs Ng Repeat,我试图在此obj上运行ng repeat,以显示“设置”: 下面是显示它的HTML: <ul> <li ng-repeat="(name, value) in settingsTest['settings'] | orderBy: 'name'"> </li> </ul> 最后,它给了我一个错误,消息必须是字符串。首先,确保您的settingsTest位于$scope或控制器上——正如您所看到的,var settingsTe

我试图在此obj上运行
ng repeat
,以显示
“设置”

下面是显示它的HTML:

<ul>
   <li ng-repeat="(name, value) in settingsTest['settings'] | orderBy: 'name'">
   </li>
</ul>

最后,它给了我一个错误,消息必须是字符串。

首先,确保您的
settingsTest
位于
$scope
或控制器上——正如您所看到的,
var settingsTest=[…]
,视图不会知道它

$scope.settingsTest = {
   ...
}
那么,在你看来:

<li ng-repeat="(setting, value) in settingsTest.settings">
  {{setting}} {{value}}
</li>
  • {{setting}}{{value}}
  • 请参见试试这个

    <li ng-repeat="(settings, value) in settingsTest.settings">{{settings}} {{value}}</li>
    
  • {{{settings}{{value}}

  • 我试过了,没用,可能是我做错了。你的控制器代码是什么?你不需要(设置、值)吗?不,这些只是别名。只要在
    {{whatever}{{youWant}}
    markup@joshstevensoh中正确调用它们,您就可以拥有
    (whatever,youWant)
    !是的,这很有道理,我只是喜欢他们搭配解决了这个问题,犯了一个愚蠢的错误。。。谢谢大家!!!
    <li ng-repeat="(settings, value) in settingsTest.settings">{{settings}} {{value}}</li>