1
考慮下面的代碼:困難MooTools的Class.extend
var Widget = new Class({
Implements: [Options],
options: {
"name" : "BaseWidget"
},
initialize: function(options) {
alert("Options are: " + JSON.stringify(options)); //alerts "Options are: undefined"
this.setOptions(options);
alert("My options are: " + JSON.stringify(this.options)); //alerts "My options are: { 'name' : 'BaseWidget' }"
},
getName: function() {
return this.options.name;
}
});
var LayoutWidget = Widget.extend({
initialize: function() {
this.parent({ "name" : "Layout" });
}
});
alert(new LayoutWidget().getName()); //alerts "BaseWidget"
我有確定爲什麼在傳入的參數「this.parent()」調用「初始化」難度LayoutWidget的功能即將到來通過Widget的初始化函數中的「undefined」。
我正在使用MooTools 1.2.2。有人能夠指引我正確的方向嗎?
有趣的是,我看到的所有例子都使用了Class.extend()。這工作雖然,謝謝 – 2010-06-18 12:13:20