我想在“locationsList”上放置一个数组。以下示例输出
All
括号和一切。
我错过了什么?
"['Location 1', 'Location 2', 'Location 3']"
这就是我的HTML:
代码:
App.controller('locationAccordionCtrl', function ($scope) {
$scope.locations = [
{
"siteName":"First Site",
"siteID":"First ID",
"locationCount":"200 Locations",
"locationsList":['Location 1', 'Location 2', 'Location 3'],
"open":false
}
];
});
视觉:
<div ng-controller="locationAccordionCtrl">
{{location.locationsList}}
</div>
我想要的是列出所有位置(带换行符)。 EG:
200 Locations
['Location 1', 'Location 2', 'Location 3']
答案 0 :(得分:1)
假设您的HTML看起来像这样:
<html>
...
<div ng-controller="locationAccordionController">
</div>
...
</html>
要获得您正在寻找的输出,您需要使用ng-repeat迭代数组并为每个数组构建一个DOM元素(例如<li>
):
<html>
...
<div ng-controller="locationAccordionController">
<div ng-repeat="location in locations">
<p>{{location.locationCount}}</p>
<ul>
<li ng-repeat="innerLocation in location.locationsList track by $index">
{{innerLocation}}
</li>
</ul>
</div>
</div>
...
</html>
更新:请注意track by $index
;这是因为Angular需要一种方法将这些创建的DOM元素链接到$scope
中的模型,如果你的数组中有重复的字符串,Angular(或一般的JavaScript)就无法区分它们。因此,我们使用数组中的位置($index
)作为每个元素的唯一标识符,以防重复。
您可以设置列表项的样式,使它们没有项目符号(例如,如果您使用的是Bootstrap,则为list-unstyled
),或者您可以将它们设为<p>
而不是列表。
答案 1 :(得分:0)
我觉得你想画画
var timeRange2 = CMTimeRangeMake(kCMTimeZero, duration2)
locationsList是一个数组,然后单独绘制,你需要使用 ng-repeat
{{locations.locationsList}}
答案 2 :(得分:-2)
实际上你的嵌套数组是正确的。
使用chrome F-12进入控制台并复制+粘贴,你会看到你做得正确:
我的例子: foobar = {something:&#34; else&#34;,&#34; foobar&#34; :&#34;是&#34;,&#34; delta&#34; :[&#34;你好&#34;,&#34;世界&#34;]}
也许你的问题在于jquery中的回调