角度数组没有预期的结果

时间:2015-11-16 12:47:38

标签: angularjs

我试图从数组中获取元素。但这是意想不到的结果。

<div ng-repeat="item in widget['ui_component_format']">
       {{ item }}
        <div ng-repeat="itemEl in item track by $index">
            {{ itemEl }}
        </div>
 </div>

输出如

["projectNumber", "projectName", "percentComplete", "projectAmountFormatted"]
[


[

"

p

r

o

j

e

c

t

N

u

m

b

e

r

"

,

"

p

r

o

j

e

c

t

N

a

m

e

"

so on

"
]

虽然我想这样:

projectNumber
projectName
percentComplete
projectAmountFormatted

1 个答案:

答案 0 :(得分:2)

之所以发生这种情况,是因为您认为您的数组是一个数组对象,但实际上是一个字符串(因此每个item都是一个字符)。在控制器中有一个通过JSON.parse方法运行它的函数:

<div ng-repeat="item in widget['ui_component_format']">
       {{ item }}
        <div ng-repeat="itemEl in getJSONitem(item) track by $index">
            {{ itemEl }}
        </div>
 </div>

控制器:

$scope.getJSONitem = function(item) {
    return JSON.parse(item);
}

Fiddle