Ext JS是一个具有面向对象编程功能的JavaScript框架. Ext是命名空间,它封装了Ext JS中的所有类.
Ext提供了300多个类,其中我们可以使用各种功能.
Ext.define()用于定义Ext JS中的类.
Ext.define(class name, class members/properties, callback function);
类名是根据应用程序结构的类的名称.例如,appName.folderName.ClassName studentApp.view.StudentView.
类属性/成员定义类的行为.
回调函数是可选的.在类正确加载时调用它.
Ext.define(studentApp.view.StudentDeatilsGrid, { extend : 'Ext.grid.GridPanel', id : 'studentsDetailsGrid', store : 'StudentsDetailsGridStore', renderTo : 'studentsDetailsRenderDiv', layout : 'fit', columns : [{ text : 'Student Name', dataIndex : 'studentName' },{ text : 'ID', dataIndex : 'studentId' },{ text : 'Department', dataIndex : 'department' }] });
与其他基于OOPS的语言一样,我们也可以在Ext JS中创建对象.
以下是在Ext JS中创建对象的不同方法.
var studentObject = new student(); studentObject.getStudentName();
Ext.create('Ext.Panel', { renderTo : 'helloWorldPanel', height : 100, width : 100, title : 'Hello world', html : 'First Ext JS Hello World Program' });
继承是将A类中定义的功能用于B类的原则.
在Ext JS中,继承可以使用两种方法完成 :
Ext.define(studentApp.view.StudentDetailsGrid, { extend : 'Ext.grid.GridPanel', ... });
这里,我们的自定义类StudentDetailsGrid使用Ext JS类GridPanel的基本功能.
Mixins是一种在B类中使用A类而不使用扩展的不同方式.
mixins : { commons : 'DepartmentApp.utils.DepartmentUtils' },
在我们声明所有其他类的控制器中添加Mixins,例如通过这种方式,我们可以调用DepartmentUtils类并在控制器或此应用程序中使用它的函数.