2012-03-27 61 views
2

我通過Ext.define (...Ext.create (...使用extjs類對象。當我在另一個類中存儲多個類的實例時,我看到一些奇怪的行爲:類不是唯一的,它看起來像Ext.create正在返回我以前的實例。Ext.Create創建返回的類已經實例化

結帳我的問題的JSFiddle here。確保您在瀏覽器中查看控制檯日誌以查看輸出和怪異。

回答

2

你正在設置一個數組Ext.define。這意味着你正在設置對象的原型,這個原型是在一個類的所有實例中共享的。因此,這不是一個意外的行爲。在構造函數中創建數組,如下所示:

Ext.define ('Sunglasses', { 
    brand : '', 

    constructor : function (args) { 
     this.lenses = []; 
     this.brand = args.brand; 
    }, 
    addLenses : function (lenses) { 
     this.lenses.push (lenses); 
    }  
}); 
+0

非常感謝!很明顯,我需要閱讀更多原型。 – 2012-03-28 02:26:47

相關問題