我怎样才能将Angular模型作为单个对象?

时间:2014-04-02 13:02:03

标签: javascript json angularjs angularjs-directive

我正在使用angular实现一个应用程序。我的布局就像跟随json。

{
  "type" : "text",
  "subtype" : "string",
  "name" : "Test"
  "value": "Sample Value"
},
{
  "type" : "radio",
  "subtype" : "array",
  "name" : "radioTest"
  "value": ['test','test2','test3']
},
{
  "type" : "checkbox",
  "subtype" : "arrayOfObject",
  "name" : "checkBoxTest"
  "value": [{key : 'test',value:'value'},{key : 'test',value:'value1'},{key : 'test',value:'value3'}]
},

这只是示例json。但实时json是不同的。它可以包含任意数量的组件和任何类型的组件。 这里基于"类型"和"子类型"属性,我将使用指令创建自己的组件。 我的要求是: 1.如何动态映射到这些属性。 2.我需要将模型作为单个对象。    例如:mapData = {" checkBoxTest":" test"," Test":" Sample Value"} 3.如何管理范围。

任何人都可以帮助解决这些问题。

1 个答案:

答案 0 :(得分:0)

首先,你不能编写一个函数来改变在json文件中的字段,而不是你想要的方式,但是你可以使用if返回一个只返回的if语句例如,你需要的字段

var key=[]
var myarray=[]
for(s=0;s<data.value.length;s++){
    key.push(ata.value[s])
}
for(c=0;c<data.length;c++){
    if(data.value.length==0){
       myarray.push({
            type:data[c].type,
            subtype:data[c].subtype,
            value:data[c].value
       }
    else{
            type:data.type,
            subtype:data.subtype,
            value:key
    }

我不知道它是否可以解决您的具体问题,但这是一个很好的方法