eclipse 装了spket ExtJs 还是没有提示

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了eclipse 装了spket ExtJs 还是没有提示相关的知识,希望对你有一定的参考价值。

extjs是4.1.1的
spket是1.6.23的
eclipse 3.7的
安装步骤应该是没问题的?

参考技术A 还要配置好Profile、指向jsb文件追问

profile?

追答

菜单对话框:Window--Preferences--Spket--javascript Profiles
右侧:New 起个名ExtJSxx--Add Library自然是ExtJS--添加jsb*文件或者ExtJS所在文件夹

追问

有的啊?
有spket javascript editer啊?

extJS--尚

ExtJS依赖JavaScript,JavaScript推荐两本书:《JavaScript高级程序设计》初阶阶段, 《JavaScript设计模式》中级阶段

 

fun1();//会调用fun1()方法 因为:function语句定义的形式,JavaScript解析器直接去找,先执行完成function定义的方法,其余代码从上到下按照顺序执行

function fun1() // 先 执行 function定义的方法
{
	
}

var fun2 = function( x ) 
{
	return x;
}

var fun3 = new Function(\'x\',\'y\',\'return x+y\');
alert( fun3(20,30) );//显示 50

=========== arguments ================
function test( x,y,z )
{
	alert( arguments.length);//返回 3(有两个参数)
	alert( arguments[2]);//显示 3(第2个参数)
}
test(1,2,3);

==============================

 

  

 

给Eclipse安装Spket的插件:

 

eclipse编写ExtJS有提示功能需要:sdk.jsb3文件:该文件在解压目录 build目录下:

==========================================

 

========================================================================================================

需要导入的extjs的文件:

=======================================================================================

/**
 * Ext.onReady 必须的准备函数 类似于 window.onload,但是加载时机跟靠前
 */
 Ext.onReady(function(){
 	// Ext 在这个方法里写
 	Ext.MessageBox.alert(\'提示信息\',\'hello world\');
 });

  

===================== Ext 的文档查看方式  ===============

-------------------------------------------------------------------------------------------

================================= window 组件 ====================================================

Ext.window.Window

configs:
constrain:布尔值,true为限制窗口只能在其容器内移动,默认值为false,允许窗口在任何位置移动。(另:constrianHeader属性)
modal:布尔值,true为设置模态窗口。默认为false
plain:布尔值,true为窗口设置透明背景。false则为正常背景,默认为false
x、y :设置窗口左上角坐标位置。
onEsc:复写onEsc函数,默认情况下按Esc键会关闭窗口。
closeAction:string值,默认值为\'destroy\',可以设置\'hide\'关闭时隐藏窗口
autoScroll:布尔值,是否需要滚动条,默认false 

html:String值

icon:String值(图片路径)

iconCls:String值(CSS的样式)

例如:

Ext.onReady(function(){

	//Ext.create方法相当于创建一个实例对象
	Ext.create(\'Ext.window.Window\',{
		title:\'我的第一个组件,window\' ,
		width:400 , 	//Number型  也可以是字符串类型  width: \'90%\'
		height:300 ,
		layout:\'fit\' ,
		constrain:true ,		//限制窗口不超出浏览器边界
		modal:true ,			//设置一个模态窗口
		//plain:true ,
		icon:\'js/extjs/icons/used/browser_window.png\',				//字符串参数,图片的路径
		//iconCls:\'\' ,   		//CSS样式
		x:50 ,
		y:50 ,
		autoScroll:true,		//添加滚动条
		html:\'<div style=width:200px;height:200px>我是一个div</div><div style=width:200px;height:200px>我是第二个div</div>\' ,
		//constrainHeader:true,	//不允许该窗口的title超出浏览器边界
		renderTo:Ext.getBody()	//新创建的组件 渲染到什么位置
	}).show();
	
});

  

 点击一个按钮 ,打开一个新的窗体 window重复创建的问题

Ext.onReady(function(){

	//ex001:点击一个按钮 ,打开一个新的窗体 window重复创建的问题
	//第一种实现
	//JQuery code: var btn = $(\'#btn\'); var dombtn = btn.get(0);
	var btn = Ext.get(\'btn\');		//这个元素是经过Ext包装的一个Ext的Dom对象//alert(btn.dom.value);
	btn.on(\'click\',function(){
		if(!Ext.getCmp(\'mywin\')){
			Ext.create(\'Ext.window.Window\',{
				id:\'mywin\' ,		//如果你给组件加了一个id  那么这个组件就会被Ext所管理
				title:\'新窗体\' , 
				height:300 ,
				width:400 ,
				renderTo:Ext.getBody() //,
				//modal:true 使窗口模态窗口
			}).show();		
		}
	});
	
	//第二种实现
//	var win = Ext.create(\'Ext.window.Window\',{
//				title:\'新窗体\' , 
//				height:300 ,
//				width:400 ,
//				renderTo:Ext.getBody() ,
//				closeAction:\'hide\'  //closeAction默认是destroy 
//	});
//	
//	Ext.get(\'btn\').on(\'click\',function(){
//			win.show();
//	});
	
});

  

在组件中添加子组件  ,并进行一系列针对于组件的操作

Ext.onReady(function(){

	
	//ex002 : 在组件中添加子组件  ,并进行一系列针对于组件的操作
	
	//在组件中添加子组件:
//	var win = new Ext.window.Window({
//		title:"添加子组件实例" , 
//		width:\'40%\' ,
//		height:400 , 
//		renderTo:Ext.getBody() ,
//		draggable:false , 	//不允许拖拽
//		resizable:false , 	//不允许改变窗口大小
//		closable:false, 	//不显示关闭按钮
//		collapsible:true ,	//显示折叠按钮
//		bodyStyle: \'background:#ffc; padding:10px;\' , // 设置样式
//		html:\'我是window的内容!!\' ,
//		//Ext items(array) 配置子组件的配置项
//		items:[{
//			//Ext的组件 给我们提供了一个简单的写法	 xtype属性去创建组件
//			xtype:\'panel\',
//			width:\'50%\',
//			height:100 ,
//			html:\'我是面板\'
//		},
//		new Ext.button.Button({
//			text:\'我是按钮\' , 
//			handler:function(){
//				alert(\'执行!!\');
//			}
//		})
////		{
////			xtype:\'button\' , 
////			text:\'我是按钮\',
////			handler:function(btn){
////				alert(\'我被点击了\');
////				alert(btn.text);
////			}
////		}
//		]
//		
//	});
//	win.show();	
	
	var win = new Ext.Window({
		id:\'mywin\' ,
		title:\'操作组件的形式\' ,
		width:500 , 
		height:300 , 
		renderTo:Ext.getBody() , 
		//表示在当前组件的top位置添加一个工具条
		tbar:[{			//bbar(bottom) lbar(leftbar)  rbar(rightbar)  fbar(footbar)
			text:\'按钮1\' ,
			handler:function(btn){
				//组件都会有 up、down 这两个方法(表示向上、或者向下查找) 需要的参数是组件的xtype或者是选择器
				alert(btn.up(\'window\').title);
			}
		},{
			text:\'按钮2\' , 
			handler:function(btn){
				//最常用的方式
				alert(Ext.getCmp(\'mywin\').title);
			}
		},{
			text:\'按钮3\' ,
			handler:function(btn){
				//以上一级组件的形式去查找 OwnerCt
				//console.info(btn.ownerCt);
				alert(btn.ownerCt.ownerCt.title);
			}			
		}]		
	});
	win.show();

});

  

 用windowGroup(Ext.ZidexManager)对象去操作多个window窗口

Ext.onReady(function(){

	
	//ex003:用windowGroup对象去操作多个window窗口
	var wingroup = new Ext.WindowGroup();
	for(var i = 1 ; i <=5;i++){
		var win = Ext.create(\'Ext.Window\',{
			title:\'第\' + i + \'个窗口\' , 
			id:\'win_\' + i , 
			width:300 , 
			height:300 ,
			renderTo:Ext.getBody()
		});
		win.show();
		wingroup.register(win);		//把窗体对象注册给ZindexManger
	}
	
	var btn1 = Ext.create(\'Ext.button.Button\',{
		text:\'全部隐藏\' , 
		renderTo:Ext.getBody(),
		handler:function(){
			wingroup.hideAll();		//隐藏所有被管理起来的window组件
		}
	});
	
	var btn2 = new Ext.button.Button({
		text:\'全部显示\' , 
		renderTo:Ext.getBody(),
		handler:function(){
			wingroup.each(function(cmp){
				cmp.show();
			});
		}		
	});
	
	var btn3 = new Ext.button.Button({
		text:\'把第三个窗口显示在最前端\' , 
		renderTo:Ext.getBody(),
		handler:function(){
			wingroup.bringToFront(\'win_3\'); //把当前的组件显示到最前端
		}		
	});	
	
	
	var btn4 = new Ext.button.Button({
		text:\'把第五个窗口显示在最末端\' , 
		renderTo:Ext.getBody(),
		handler:function(){
			wingroup.sendToBack(\'win_5\');	//把当前的组件显示到最后
		}		
	});		
	
	
});

  

config、constructor

Ext.onReady(function(){
	
	//第12讲:config、constructor
	/*
	//在Ext中如何去定义一个类: Ext.define(className , properties , callback)
	Ext.define(\'Person\',{
		//这里是对于这个类的一些配置信息
		//config属性 就是配置当前类的属性内容,并且会加上get和set方法
		config:{
			name:\'z3\' , 
			age: 20
		},
		//自己定义的方法
		say:function(){
			alert(\'我是方法...\');
		},
		//给当前定义的类加一个构造器 ,目的就是为了初始化信息
		constructor:function(config){
			var me = this ;
//			for(var attr in config){
//				alert(attr + " : " + config[attr]);
//			}
			me.initConfig(config);	// 真正的初始化传递进来的参数
		}
	});
	
	//Ext.create 实例化一个对象
	var p = Ext.create(\'Person\',{
		name:\'王五\' , 
		age:30
	});
	alert(p.getName());
	alert(p.getAge());
	p.say();
	*/
	
	
	
	//第13讲:extend 
	
	//Ext的继承代码
	/**
	//Sup Class
	Ext.define(\'Person\',{
		config:{
			name:\'bjsxt\'
		} ,
		constructor:function(config){
			var me = this ;
			me.initConfig(config);
		}
	});
	//Sub Class
	Ext.define(\'Boy\',{
		//使用Ext的继承
		extend:\'Person\',
		config:{
			sex:\'男\',
			age:20
		}
	});
	var b = Ext.create(\'Boy\',{
		name:\'张三\',
		age:25
	});
	alert(b.name);
	alert(b.sex);
	alert(b.age);
	
	*/
	
	
	//javascript : prototype(原型)  :所有类的实例对象所共享
	/**
	 
	function Person(name){
		this.name = name; 
		//this.sayName = sayName ;
	};
//	function sayName(){
//		alert(this.name);
//	};
	Person.prototype.sayName = function(){
		alert(this.name);
	};
	
	var p1  = new Person(\'张三\');
	p1.sayName();
	var p2  = new Person(\'李四\');
	p2.sayName();	
	alert(p1.sayName == p2.sayName);
 
	*/




	//javascript : prototype(原型)  :实现继承
	/**
	
	//SupClass
	var Person = function(name){
		this.name = name; 
	};
	//alert(Person.prototype.constructor);		//原型对象的构造器,默认是当前的类的模板
	//SupClass prototype object
	Person.prototype = {
		constructor:Person ,
		id:100
	};
	
	//SubClass
	var Boy = function(name,sex,age){
		//借用构造函数继承的方式
		Person.call(this,name);
		this.sex = sex ;
		this.age = age ;
	};
	
	//实现原型继承: 继承了父类的模板和父类的原型对象
	//Boy.prototype = new Person();
	//自己实现extend的方法
	function myextend(sub , sup){
	        var F = function() {},		//定义一个空函数做为中转函数
	            subclassProto,			//子类的原型对象
	            superclassProto = sup.prototype;	//把父类的原型对象 交给了superclassProto变量
	
	        F.prototype = superclassProto;	// 做中转的位置:把父类的原型对象 赋值给了 F这个空函数的原型对象
	        subclassProto = sub.prototype = new F();	//进行原型继承
	        subclassProto.constructor = sub;		//还原构造器
	        sub.superclass = superclassProto;		//做了一个保存,保存了父类的原型对象
			//目的是为了防止你大意了
	        if (superclassProto.constructor === Object.prototype.constructor) {
	            superclassProto.constructor = sup;
	        }	
	};
	myextend(Boy ,Person);
	var b = new Boy(\'李四\',\'男\',25);
	alert(b.name);
	alert(b.sex);
	alert(b.id);
	
	*/
	
	
	//第14讲:Ext.define 其他配置项
	
	
	//别名、备用名
	/**
	Ext.define("User",{
		config:{
			name:\'bjsxt111\' , 
			age:100
		},
		alias:\'uu\' ,//起别名	底层代码在Ext.ClassManger
		alternateClassName:\'uuu\',	//给当前类一个备用名 底层代码在Ext.ClassManger
		constructor:function(config){
			var me = this;
			me.initConfig(config);
		}
	});
	 
	var u = Ext.create(\'uuu\');
	alert(u.name);
	alert(u.age);
	*/
	
	
	//statics(子类不能继承) inheritableStatics(子类可以继承) 给当前类定义静态方法或属性
	
	/**
	Ext.define(\'Person\',{
		config:{
			name:\'我是父类\'
		},
		statics:{	//静态的方法或属性
			static_id:\'我是Person的id,不能被子类所继承!!\'
		},
		inheritableStatics:{	//静态的方法或属性
			inheritableStatics_id:\'我是Person的id,我可以被子类继承!!\'
		},
		constructor:function(config){
			var me = this;
			me.initConfig(config);
		}
	});
	
	//一定注意:!!!!!//实例对象是无法使用静态属性或方法的
	//var p = Ext.create(\'Person\');
	//alert(p.static_id);	
	//用类名去使用静态属性:!!!!
//	alert(Person.static_id);
//	alert(Person.inheritableStatics_id);
	
	Ext.define(\'User\',{
		extend:\'Person\' , 
		config:{
			age:20
		}
	});
	alert(User.static_id);
	alert(User.inheritableStatics_id);
	
	*/
	
	//mixins 混合的配置项,可以多继承的配置
	
	/**
	Ext.define("Sing",{
		canSing:function(){
			alert(\'cansing...\');
		}
	});
	Ext.define("Say",{
		canSay:function(){
			alert(\'cansay...\');
		}
	});	
	Ext.define(\'User\',{
		mixins:{
			sing:"Sing" , 
			say:"Say"
		}
	});
	
	var u = Ext.create("User");
	u.canSay();
	u.canSing();
	*/
	
	
	
	//^_^伪代码说明: requires 和 uses 以及  singleton
	/**
	Ext.define(\'MyComponent\',{
		//可能需要Ext或者是其他的类做支持
		//requires加载需要的类时机是:当前类初始化之前被加载
		//requires:[\'Ext.window.Window\',\'Ext.button.Button\'] 
		//uses加载需要的类时机是:当前类初始化之后被加载
		//uses:[\'Ext.form.Panel\',\'Ext.grid.Panel\']
		//singleton:true	//当前的类就被当做一个单例对象
	});
	*/

});

  

Ext.apply & Ext.applyIf

Ext.onReady(function(){

	//Ext.js
	
	//Ext.apply & Ext.applyIf
	
	/**
	//Ext.apply就是为对象扩展属性或方法的
	var src = {name:\'张三\',age:20};	//源对象
	var config = {name:\'李四\',sex:\'男\'};		//配置对象
	//Ext.apply(src , config);
	Ext.applyIf(src,config);		//如果当前对象存在属性,我就不进行copy 如果不存在则copy
	// name : \'李四\'  age : 20  sex:\'男\'
	for(var attr in src){
		alert(attr + " : " + src[attr]);
	}
	*/
	
	/**
	 * 
	//Ext.extend
	//Ext.typeOf 和原生的javascript typeof
//	var str = \'111\';
//	var num = 20;
//	alert(Ext.typeOf(str));
//	alert(Ext.typeOf(num));
//	Ext.isArray()
//	var arr = [1,2,3,4];
//	Ext.iterate(arr,function(item){
//		alert(item);
//	});
	
	//Ext.override
//	Ext.define(\'User\',{
//		say:function(){
//			alert(\'say....\');
//		}		
//	});
//	var user = Ext.create(\'User\');
//	Ext.override(user,{
//		say:function(){
//			alert(\'我是覆盖后的say方法..\');
//		}
//	});
//	user.say();

	 */

	//Ext-more.js
	
});

  

如何创建一个Ext的类,创建类的复杂流程

定义类的方法:define

对于Ext4.X版本来说,采用了新定义类的define方法,而不是延续旧版本的extend方法,那么对于定义一个新的类。具体研究define的使用

Ext.define( classname,properties,callback);

---classname:要定义的新类的类名

---properties:新类的配置对象(Ext文档中 Class的配置项configs)

---callback:回调函数,当类创建完后执行该函数。

注解:对于Ext定义一个新的类。那么我们可以想象到。既然是利用Ext.define去创建类。那么创建的类一定是Ext所特有的类,不同于传统的JavaScript创建一个类,也就是我们要对define方法的第二个参数properties配置项进行配置,需要找到Ext对于类的支持的API进行配置

==========================================================

Configs配置项说明:

extends 用于继承
alias 类的别名
alternateClassName 备用名,与alias差不多
requires 需要使用到的类名数组,在动态加载时会根据该属性去下载类,注意需要的类是在当前类之前被加载
uses 与requires类似,但是被引用的类可以在该类之后才加载
constructor 构造器属性,一般用来初始化类的配置和调用其父类的方法
mixins 混入属性,多继承
config 定义类的配置项,会吧config里的每一个属性加上get和set方法
statics 定义静态方法,属性不能被子类继承
inheritableStatics 与statics类似,但是其属性可被子类继承
singleton 设置该类为单件模式

-----------------------------------------------------

 config、constructor

Ext.onReady(function(){
	
	//第12讲:config、constructor
	/*
	//在Ext中如何去定义一个类: Ext.define(className , properties , callback)
	Ext.define(\'Person\',{
		//这里是对于这个类的一些配置信息
		//config属性 就是配置当前类的属性内容,并且会加上get和set方法
		config:{
			name:\'z3\' , 
			age: 20
		},
		//自己定义的方法
		say:function(){
			alert(\'我是方法...\');
		},
		//给当前定义的类加一个构造器 ,目的就是为了初始化信息
		constructor:function(config){
			var me = this ;
//			for(var attr in config){
//				alert(attr + " : " + config[attr]);
//			}
			me.initConfig(config);	// 真正的初始化传递进来的参数
		}
	});
	
	//Ext.create 实例化一个对象
	var p = Ext.create(\'Person\',{
		name:\'王五\' , 
		age:30
	});
	alert(p.getName());
	alert(p.getAge());
	p.say();
	*/
}

 

extend

Ext.onReady()
{
	//extend 
	
	//Ext的继承代码
	/**
	//Sup Class
	Ext.define(\'Person\',{
		config:{
			name:\'bjsxt\'
		} ,
		constructor:function(config){
			var me = this ;
			me.initConfig(config);
		}
	});
	//Sub Class
	Ext.define(\'Boy\',{
		//使用Ext的继承
		extend:\'Person\',
		config:{
			sex:\'男\',
			age:20
		}
	});
	var b = Ext.create(\'Boy\',{
		name:\'张三\',
		age:25
	});
	alert(b.name);
	alert(b.sex);
	alert(b.age);
	
	*/
	
	
	//javascript : prototype(原型)  :所有类的实例对象所共享
	/**
	 
	function Person(name){
		this.name = name; 
		//this.sayName = sayName ;
	};
//	function sayName(){
//		alert(this.name);
//	};
	Person.prototype.sayName = function(){
		alert(this.name);
	};
	
	var p1  = new Person(\'张三\');
	p1.sayName();
	var p2  = new Person(\'李四\');
	p2.sayName();	
	alert(p1.sayName == p2.sayName);
 
	*/


	//javascript : prototype(原型)  :实现继承
	/**
	
	//SupClass
	var Person = function(name){
		this.name = name; 
	};
	//alert(Person.prototype.constructor);		//原型对象的构造器,默认是当前的类的模板
	//SupClass prototype object
	Person.prototype = {
		constructor:Person ,
		id:100
	};
	
	//SubClass
	var Boy = function(name,sex,age){
		//借用构造函数继承的方式
		Person.call(this,name);
		this.sex = sex ;
		this.age = age ;
	};
	
	//实现原型继承: 继承了父类的模板和父类的原型对象
	//Boy.prototype = new Person();
	//自己实现extend的方法
	function myextend(sub , sup){
	        var F = function() {},		//定义一个空函数做为中转函数
	            subclassProto,			//子类的原型对象
	            superclassProto = sup.prototype;	//把父类的原型对象 交给了superclassProto变量
	
	        F.prototype = superclassProto;	// 做中转的位置:把父类的原型对象 赋值给了 F这个空函数的原型对象
	        subclassProto = sub.prototype = new F();	//进行原型继承
	        subclassProto.constructor = sub;		//还原构造器
	        sub.superclass = superclassProto;		//做了一个保存,保存了父类的原型对象
			//目的是为了防止你大意了
	        if (superclassProto.constructor === Object.prototype.constructor) {
	            superclassProto.constructor = sup;
	        }	
	};
	myextend(Boy ,Person);
	var b = new Boy(\'李四\',\'男\',25);
	alert(b.name);
	alert(b.sex);
	alert(b.id);
	
	*/
}

 

alias别名、alternateClassName备用名

Ext.onReady()
{
	//Ext.define 其他配置项
	
	//别名、备用名
	/**
	Ext.define("User",{
		config:{
			name:\'bjsxt111\' , 
			age:100
		},
		alias:\'uu\' ,//起别名	底层代码在Ext.ClassManger
		alternateClassName:\'uuu\',	//给当前类一个备用名 底层代码在Ext.ClassManger
		constructor:function(config){
			var me = this;
			me.initConfig(config);
		}
	});
	 
	var u = Ext.create(\'uuu\');
	alert(u.name);
	alert(u.age);
	*/
}

 

 statics(子类不能继承) inheritableStatics(子类可以继承) 给当前类定义静态方法或属性

 

Ext.onReady()
{
	
	//statics(子类不能继承) inheritableStatics(子类可以继承) 给当前类定义静态方法或属性
	
	/**
	Ext.define(\'Person\',{
		config:{
			name:\'我是父类\'
		},
		statics:{	//静态的方法或属性
			static_id:\'我是Person的id,不能被子类所继承!!\'
		},
		inheritableStatics:{	//静态的方法或属性
			inheritableStatics_id:\'我是Person的id,我可以被子类继承!!\'
		},
		constructor:function(config){
			var me = this;
			me.initConfig(config);
		}
	});
	
	//一定注意:!!!!!//实例对象是无法使用静态属性或方法的
	//var p = Ext.create(\'Person\');
	//alert(p.static_id);	
	//用类名去使用静态属性:!!!!
//	alert(Person.static_id);
//	alert(Person.inheritableStatics_id);
	
	Ext.define(\'User\',{
		extend:\'Person\' , 
		config:{
			age:20
		}
	});
	alert(User.static_id);
	alert(User.inheritableStatics_id);
	
	*/
	
}

 

mixins 混合的配置项,可以多继承的配置

Ext.onReady()
{
	//mixins 混合的配置项,可以多继承的配置
	
	/**
	Ext.define("Sing",{
		canSing:function(){
			alert(\'cansing...\');
		}
	});
	Ext.define("Say",{
		canSay:function(){
			alert(\'cansay...\');
		}
	});	
	Ext.define(\'User\',{
		mixins:{
			sing:"Sing" , 
			say:"Say"
		}
	});
	
	var u = Ext.create("User");
	u.canSay();
	u.canSing();
	*/
}

 

伪代码说明: requires 和 uses 以及  singleton

Ext.onReady()
{
	//^_^伪代码说明: requires 和 uses 以及  singleton
	/**
	Ext.define(\'MyComponent\',{
		//可能需要Ext或者是其他的类做支持
		//requires加载需要的类时机是:当前类初始化之前被加载
		//requires:[\'Ext.window.Window\',\'Ext.button.Button\'] 
		//uses加载需要的类时机是:当前类初始化之后被加载
		//uses:[\'Ext.form.Panel\',\'Ext.grid.Panel\']
		//singleton:true	//当前的类就被当做一个单例对象
	});
	*/
}

 

 

Ext.js和Ext-more.js的深入解析。

Ext对原生JavaScript类的扩展

Ext操作DOM

Ext开始响应事件

认识Ext.js和Ext-more.js , 这两个文件包含了Ext的一些基础定义,基本的属性和方法

Ext.onReady(function(){

	//Ext.js
	
	//Ext.apply & Ext.applyIf
	
	/**
	//Ext.apply就是为对象扩展属性或方法的
	var src = {name:\'张三\',age:20};	//源对象
	var config = {name:\'李四\',sex:\'男\'};		//配置对象
	//Ext.apply(src , config);
	Ext.applyIf(src,config);		//如果当前对象存在属性,我就不进行copy 如果不存在则copy
	// name : \'李四\'  age : 20  sex:\'男\'
	for(var attr in src){
		alert(attr + " : " + src[attr]);
	}
	*/
	
	/**
	 * 
	//Ext.extend
	//Ext.typeOf 和原生的javascript typeof
//	var str = \'111\';
//	var num = 20;
//	alert(Ext.typeOf(str));
//	alert(Ext.typeOf(num));
//	Ext.isArray()
//	var arr = [1,2,3,4];
//	Ext.iterate(arr,function(item){
//		alert(item);
//	});
	
	//Ext.override
//	Ext.define(\'User\',{
//		say:function(){
//			alert(\'say....\');
//		}		
//	});
//	var user = Ext.create(\'User\');
//	Ext.override(user,{
//		say:function(){
//			alert(\'我是覆盖后的say方法..\');
//		}
//	});
//	user.say();

	 */

	//Ext-more.js
	
});

 

以上是关于eclipse 装了spket ExtJs 还是没有提示的主要内容,如果未能解决你的问题,请参考以下文章

eclipse安装了spket插件后,对javascript会自动提示,但是对Ext这个类不提示,Ext.没提示,求解啊

eclipse+spket+Extjs4.2.1开发环境搭建

为啥我安装了eclipse的spket插件 .之后还是不提示呢

extJS--尚

Eclipse在Eclipse上安装Spket

在Eclipse 下配置jQuery插件spket 不提示