原文出处 http://blog.itpub.net/28562677/viewspace-1067421/
--------------------------------------------------------------
在些extjs类的定义时有必要简单介绍一下js原生态的类定义,已做参考
原生态自定义类:点击(此处)折叠或打开
- function Person(name){
- this.name=name;
- this.sayHello=function(content){
- alert(this.name+\'说:\'+content);
- }
- }
- new Person(\'sc\').sayHello(\'hello world!\')
点击(此处)折叠或打开
- Ext.define(\'Myapp.Person\',{
- config:{
- name:\'\'
- },
- sayHello:function(oparetion){
- Ext.Msg.alert(this.name,oparetion);
- },
- constructor:function(name){
- this.initConfig(name);
- }
- })
点击(此处)折叠或打开
- Ext.onReady(function(){
- Ext.create(\"Myapp.Person\",{
- name:\'sc\'
- }).sayHello(\'hello world!\');
- })
现在我们再来看看动态加载,还是用上面的这个例子演示:
创建一个Person.js的文件,内容为:
点击(此处)折叠或打开
- Ext.define(\'Myapp.Person\',{
- config:{
- name:\'cc\'
- },
- sayHello:function(oparetion){
- Ext.Msg.alert(this.name,oparetion);
- },
- constructor:function(name){
- this.initConfig(name);
- })
点击(此处)折叠或打开
- Ext.onReady(function(){
- Ext.Loader.setConfig({
- enabled: true,
- paths: {
- Myapp:\"resources/myjs\"
- }
- });
- Ext.create(\"Myapp.Person\",{
- name:\'sc\'
- }).sayHello(\'hello world!\');
- })
2、paths : { Myapp : "resources/myjs" }中"resources/myjs这段是Person.js的相对路径;
3、Ext.create(\"Myapp.Person\",{})中Myapp.Person是自定义类的全名,不可以使用别名,负责是无法找到自定义类的js的;
4、创建的js文件名称必须与 Ext . create ( \ "Myapp.Person\",{})中的 Person名称一致,因为在执行的时候会根据 Myapp.Person中的 Person来找Person.js.没有的话就会报错;
最近学习有些忙!写的有些简单,如果有需要交流的童鞋盆友留言交流;