我有一个名为“baseScreen”的基类,如下所示:
digient.casino.ui.baseScreen = function() {
goog.debug.Logger.getLogger('demo').info('baseScreen');
this.background = goog.dom.createDom('div', {'class': 'backgroundHolder'}, '');
console.log(this);
}
digient.casino.ui.baseScreen.background = null;
digient.casino.ui.baseScreen.prototype.load = function() {
var self = this;
goog.debug.Logger.getLogger('demo').info('baseScreen : load');
goog.dom.appendChild(document.body, this.background);
<!-- screen setup code goes here -->
};
digient.casino.ui.baseScreen.prototype.resize = function(newSize) {
goog.debug.Logger.getLogger('demo').info('baseScreen : resize');
};
中onLoad
,如果我将 baseScreen 加载为
var sc = new digient.casino.ui.baseScreen();
sc.load();
它工作正常。
然后我导出一个屏幕,命名registerScreen
如下:
digient.casino.ui.registerScreen = function() {
goog.debug.Logger.getLogger('demo').info('registerScreen');
digient.casino.ui.baseScreen.call();
};
goog.inherits(digient.casino.ui.registerScreen, digient.casino.ui.baseScreen);
当我尝试加载 的对象时registerScreen
,它会在我尝试附加this.background
到的行上抛出一个错误,document.body
并且奇怪console.log(this)
的是在第 4 行打印window
对象而不是baseScreen
或registerScreen
对象。
我的代码有什么问题?我是否需要在派生类中覆盖加载、调整大小?(试过这个,但失败)或任何其他问题?