我需要能够在Angular中动态创建具有以下形式的参数对象:
[
password: {type: 'String', required: true, value: 'apassword'},
someRandomParam: {type: 'Integer', required: false, value:3}
]
我知道如何绑定到这个以便在列表或表中显示值,但我不知道如何使用Angular中的绑定构造此对象,主要是创建密钥(“password”),因为这些密钥也是动态创建的。
答案 0 :(得分:0)
我假设您的意思是拥有一个对象,而不是一个数组(您的代码将生成SyntaxError),就像那样:
$scope.params = {
password: {type: 'String', required: true, value: 'apassword'},
someRandomParam: {type: 'Integer', required: false, value:3}
};
即使使用ngRepeat,也可以绑定到它。但是向该对象添加内容需要的不仅仅是简单的绑定。在视图中创建一些输入:
<input type="text" ng-model="newParamName" />
<input type="text" ng-model="newParam.type" />
<input type="checkbox" ng-model="newParam.required" />
<input type="text" ng-model="newParam.value" />
<input type="button" ng-click="addParam(newParamName, newParam)" value="Add me!" />
......并在控制器中:
$scope.addParam = function(name,param){
$scope.params[name] = angular.copy(param);
};