2013-10-07 84 views
0

我有一个奇怪的问题。我有一个扩展createjs.Container像这样的对象:创建createjs对象的新实例每次都返回相同的实例

(function() { 
    var Door = function(label, color) { 
    this.initialize(label, color); 
    } 
    var M = Door.prototype = new createjs.Container(); // inherit from Container 
    M.Container_initialize = M.initialize; 
    M.initialize = function() { 
    console.log(this); 
    } 
    window.Door = Door; 
}(window)); 

每当我试着和任意位置创建该对象的新版本中,执行console.log输出给我相同的对象每次。所以,如果我这样做:

var door1 = new Door(); 
var door2 = new Door(); 

我得到的控制台输出:

Door {id: 10, _matrix: c, children: Array[0], Container_initialize: function, initialize: function…} 
Door {id: 10, _matrix: c, children: Array[0], Container_initialize: function, initialize: function…} 

...都具有相同的ID。

我不知道我在这里有什么错误会导致这种情况发生?

回答

0

我错过了一个简单的线条从M.initialize方法:

this.Container_initialize(); 

问题解决了!

相关问题