我在这里有这些对象,我将用它来保存表单中的数据,然后将其作为JSON发送到api:
$scope.price = {}
$scope.item = {"price":$scope.price, };
我还有这些字段用于在html页面上动态生成输入:
$scope.fields = [
{
name: $scope.item.title,
title: 'Title',
type: {
view: 'input'
}
},
{
name: $scope.price.regular,
title: 'Regualar Price',
type: {
view: 'input'
}
}
];
现在为了生成表单我使用这段代码:
<div class="form-group" ng-repeat="field in fields">
<label>{{ field.title }}:</label>
<span ng-switch on="field.type.view">
<span ng-switch-when="input">
<input
ng-model=field.name
type="text"
/>
</span>
</span>
</div>
使用此代码,它不会将输入中的值分配给对象。有办法吗?我知道我可以这样做:
ng-model="item[field.name]"
但这限制了我只对象的一个层次。我希望能够绑定嵌套对象。而我似乎无法弄明白。谢谢!