Javascript 如何避免在使用$filter后更新原始数组?
请参阅以下代码:Javascript 如何避免在使用$filter后更新原始数组?,javascript,angularjs,Javascript,Angularjs,请参阅以下代码: var fieldsControls=$filter('filter')(vm.fieldsControls,{FieldId:id}); 对于(变量i=0;i
var fieldsControls=$filter('filter')(vm.fieldsControls,{FieldId:id});
对于(变量i=0;i 返回字段控件代码>首先准备阵列的深度副本。代码如下:
var copy = angular.copy(vm.FieldsControls);
var fieldsControls = $filter('filter')(copy, { FieldId: id });
for (var i = 0; i < fieldsControls.length; i++)
{
if (fieldsControls[i].ControlType == "DropDown") {
fieldsControls[i].Options = $filter('filter')(vm.Options, { type: fieldsControls[i].type });
}
}
return fieldsControls;
var copy=angular.copy(vm.fields控件);
var fieldsControls=$filter('filter')(复制,{FieldId:id});
对于(变量i=0;i
我试过了,但出现了错误,因为“FieldsControl未定义”。对不起,我使用了旧语法。这是应该的:var copy=angular.copy(vm.fieldsControl)@科技龟