Angularjs将更新应用于对象

时间:2016-09-23 10:46:43

标签: javascript angularjs

所以说你有以下代码:

var absenceType = {name: 'hello'};
this.newAbsenceType = angular.copy(absenceType);

现在您对this.newAbsenceType进行了更改,并希望将这些更改应用于原始对象。

所以我一直在看延伸:

angular.extend( absenceType, this.newAbsenceType);

然而,这并没有成功。

我做错了什么?

2 个答案:

答案 0 :(得分:1)

使用合并

 angular.merge(absenceType, this.newAbsenceType);

但是扩展也应该以相同的方式工作,它们之间的唯一区别是合并深度扩展目标对象。

演示: https://jsbin.com/jucebix/9/edit?html,js,console

答案 1 :(得分:0)

您可以使用$ scope。$ watch

$scope.$watch(function(){ return this.newAbsenceType}, function(newValue, oldValue) {
  //do change
});