我在 Knockout 中遇到了一个问题,我在原型中创建了一个用户对象,其中对象的可观察属性似乎被最后一次出现的情况覆盖。
因此我不能多次使用同一个对象,否则它将被覆盖。
虽然这很难解释,但请看我的小提琴。
http://jsfiddle.net/RSECj/1/
我究竟做错了什么? (或者这是淘汰赛中的错误?)我该如何解决这个问题。
因为可观察量是函数而不是属性,所以它们由对象原型上的单个实例表示,这与设置时在对象上创建的属性不同。
您可以使用函数继承来实现您想要的。
http://jsfiddle.net/ypWQN/1/
var User = function(firstName, lastName){
var that = {};
that.firstName = ko.observable(firstName);
that.lastName = lastName;
return that;
};
var Employee = function(firstName, lastName){
var that = User();
that.firstName(firstName);
that.lastName = lastName;
return that;
};
希望这可以帮助。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)