2014-04-28 41 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'只是表示在完成类的定义之前应该加载所请求的类。 –

相关问题