【发布时间】:2015-02-03 18:35:54
【问题描述】:
我正在使用 Angular.js 1.3.x。在以前的 Angular 版本(包括 1.3.0-beta5)中,以下代码会将原型中的属性直接复制到新对象:
function x() {};
x.prototype.logIt = function() {console.log("it")};
var src = new x(); // x has custom properties on the prototype
var dest = {};
angular.copy(src, dest);
dest.logIt(); // "TypeError" in Angular 1.3.0+
然而,在 Angular.js 1.3.0+ 中,原型的属性完全丢失了,尽管migration guide for 1.2 to 1.3 说:
这会更改 angular.copy,以便将原始对象的原型应用于复制的对象。以前,angular.copy 会将原始对象原型链的属性直接复制到复制的对象上。
如何保留原型中的属性?
【问题讨论】:
标签: javascript angularjs