javascript继承 - '...未定义'。命名空间问题?

时间:2014-09-04 13:01:26

标签: javascript

我有一个名为ModuleSelector的“类”,它从服务器中获取模块列表并将其显示为可点击的切换按钮。我正在尝试创建一个名为Module的类,它扩展ToggleButton类,仅对ModuleSelector可见。

我遇到的问题是这一行:

Module.prototype = new ToggleButton();发出错误:ToggleButton is not defined

我不明白为什么找不到它,因为我可以在Module函数中创建ToggleButton的新实例,例如。

ModuleSelector.js

(function() {

    function Module(id,name){
        this.moduleID = id;
        this.moduleName = name;
        this.topics = [];

        this.addTopic = function(topic){
            this.topics.push(topic);
        }
    }

    Module.prototype = new ToggleButton();
    Module.prototype.constructor = Module;

    var ModuleSelector = function (id) {
        this.initialize(id);
    };

    var p = ModuleSelector.prototype = new createjs.Container();
    p.Container_initialize = p.initialize;
    p.initialize = function (id) {
        this.Container_initialize();
        //.....
    };

    window.ModuleSelector = ModuleSelector;
}());

ToggleButton.js

(function() {
    var ToggleButton = function(text) {
        this.initialize(text);
        //....code
    };

    var p = ToggleButton.prototype = new createjs.Container();
    p.Container_initialize = p.initialize;
    p.initialize = function(text) {
        this.Container_initialize();
    };

    window.ToggleButton = ToggleButton;
}());

0 个答案:

没有答案