AngularJS对象转换或过滤

时间:2015-06-23 15:32:14

标签: angularjs

我在AngularJS中有一个资源返回一个看起来像这样的对象:

[
 {
  field: {
   name: 'foo'
  },
  field_value: 'bar'
 },
 {
  field: {
   name: 'foo2'
  },
  field_value: 'bar2'
 } 
]

每个字段名称都是唯一的,我希望能够按名称提取值来填充表单。像这样:

<input type="text" value="{{data.foo}}" />  # this should equal 'bar'

如何过滤该对象以轻松访问这些值?或者我应该首先对数据进行转换吗?

2 个答案:

答案 0 :(得分:1)

是的,将数据转换为适当的形式是最好的。我建议在返回之前在返回它的资源中执行数据操作。

var newData = {};

data.forEach(function (item) {
        newData[item.field.name] = item.field_value;
    }
);

console.log(newData.foo);

答案 1 :(得分:0)

将数据信息转换为一个为您的GUI提供服务的表单。你会避免很多麻烦。