gpt4 book ai didi

javascript - 如何扩展继承Backbone.Events的类?

转载 作者:行者123 更新时间:2023-12-03 06:32:07 25 4
gpt4 key购买 nike

我正在尝试使用 Backbone.js 继承模型创建以下类结构:

Backbone.Events -> Parent -> Child

子级应该从父级调用initialize,但不幸的是它不起作用。父方法和属性不可见。请帮忙。

我的代码

var Parent = function() {
this.initialize.apply(this, arguments);
};

_.extend(Parent.prototype, Backbone.Events, {

initialize: function() {
// parent init
},
});

var Child = function() {
this.initialize.apply(this, arguments);
};

_.extend(Child.prototype, Parent, {
/* Inherits Parent */

initialize: function() {
// need to call `parent init` code
// need to init myself (child)
// DOES NOT WORK
// Parent methods and properties are not visible
Parent.prototype.initialize.call(this, arguments);
}
});

最佳答案

只需使用以下方法:

function Parent() {
this.initialize.apply(this, arguments);
};

_.extend(Parent.prototype, Backbone.Events, {

initialize: function() {
// parent init
},
});

// pick extend method from Backbone
Parent.extend = Backbone.Model.extend;

var Child = Parent.extend({
initialize: function() {
// Parent methods and properties are visible
Parent.prototype.initialize.apply(this, arguments);
}
});

关于javascript - 如何扩展继承Backbone.Events的类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38401921/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com