2014-04-28 40 views

回答

4

擴展 子類意味着如果你創建類B中擴展類A,B可以像一個A進行處理,以及繼承方法和屬性。 A的方法和屬性成爲你的新B級的一部分

需要 這只是一個裝載mecanism是保證一些所需的類加載之前就可以使用它。對於爲例,如果你需要顯示一個消息框,你會叫:

Ext.Msg.confirm("Confirmation", "Do you want to add " + value + " to the database ?"); 

Ext.Msg是不是你的類的一部分,你基本上只是告訴系統顯示彈出。但是,如果你在啓動應用程序時這樣做,那麼在類Ext.Msg已被加載之前,它會失敗。

要總結:

擴展 =>當你需要成爲一個類X

需要 =>當你需要使用一個類X

0

擴展 - 該類將擴展爲一個父類。 u能在控制器或存儲或模型,其延伸至一個父類看到此

例如

Ext.define("MyApp.controller.ExtendParent", { 
    extend: "Ext.app.Controller", 

需要 - 從一個或多個其它類所需要的功能的類。

Ext.define("MyApp.controller.ExtendParent", { 
    extend: "Ext.app.Controller", 
    requires: [ 
     'Ext.MessageBox', 
     'MyApp.store.ParentStore', 
     'MyApp.view.ParentView' 
    ], 
+0

所以不同的是需要給來自多個類和擴展的功能只給出1? –

+0

部分是。 Extends將嘗試繼承超類的行爲。但需要嘗試調用特定用法。不要試圖深入挖掘。在這個例如「Ext.MessageBox」中顯示對話框,你應該在需要的內部調用它 –

+2

我不會說部分。 'extends'意味着這個類將成爲一個子類。 'require'只是表示在完成類的定義之前應該加載所請求的類。 –

相關問題