Javascript angularjs:ng模型双对象

Javascript angularjs:ng模型双对象,javascript,angularjs,Javascript,Angularjs,我尝试实现双嵌套对象。(下面的例子) 问题是我当前的代码正在对象内部生成数组 <div ng-if="newResultUnits()" ng-repeat="set in sets" ng-model="newexercise.sets[$index]"> <label>Set {{$index+1}}</label> <label>

我尝试实现双嵌套对象。(下面的例子) 问题是我当前的代码正在对象内部生成数组

<div ng-if="newResultUnits()" ng-repeat="set in sets" ng-model="newexercise.sets[$index]">
                    <label>Set {{$index+1}}</label>
                    <label>
                        <label>
                            <input type="text" ng-repeat="resultUnit in newResultUnits()" ng-model="newexercise.sets[$parent.$index][$index].value" placeholder="{{resultUnit.name}}">
                        </label>
                    </label>
                </div>
应该是这样的:(请注意double
[[
和缺少的
0:


如果我混合了数组和对象,我很抱歉。谢谢!

您需要正确初始化数据结构。因此,在控制器中,从

$scope.newexercise = { sets: [] };
所以Angular知道您希望
$scope.newexercise
成为一个数组。然后在模板中,在每个内部循环上使用ngInit
ng init=“newexercise.sets[$parent.$index]=[]”


集合{{$index+1}

演示:

集合最初是什么?您好,谢谢您的回答。$scope.sets只是一个空数组。当用户想要添加更多集合时,项目将被推送到其中。简单动态表单:)或者您的意思是什么?就是它!非常感谢!欢迎您。如果您计划在内部re中添加更多字段,这里还有一个变体泥炭:
    {
      "name": "MultiTest",
      "sets": [
        [
          {
            "value": "10",
            "name": "Kg"
          },
          {
            "value": "10",
            "name": "Wdh"
          }
        ]
      ]
    }
$scope.newexercise = { sets: [] };
<div ng-repeat="set in sets">
    <label>Set {{$index+1}}</label>
    <label>
        <label>
            <input type="text" 
                   ng-repeat="resultUnit in newResultUnits()" 
                   ng-init="newexercise.sets[$parent.$index] = []" 
                   ng-model="newexercise.sets[$parent.$index][$index].value" 
                   placeholder="{{resultUnit.name}}">
        </label>
    </label>
</div>