extjs5主题修改,登录,语法支持等

1,extjs5的主题修改,这里不得不提到的是Sencha Architect这款设计软件,这是Sencha官方出品的extjs UI设计软件,开发人员可以方便地进行可视化开发,下载地址是http://www.sencha.com/products/architect/download/

这个软件是收费的,但我们可以注册一个账号试用30天,不需要邮箱验证,直接在登陆界面上注册即可,效率还是非常高的,进入软件后,我们新建一个例子程序,如果我们想修改某种主题,则直接在这里修改保存预览即可,我们可以修改它默认的颜色,以及各种组件的默认属性,

然后程序会在test\resources目录下生成一个css文件,例如preview-ext-theme-crisp-67b246d4-88d1-4f8e-9401-20a7ca9cc236.css这样的文件,我们把这个文件copy下来放到你系统里,然后引用一下,这样你的主题就会被这个覆盖掉,成为你自定义的样子

注意,crisp主题必须用preview-ext-theme-crisp-xxx.css去覆盖,不能覆盖neptune主题,请注意哈

extjs5主题修改,登录,语法支持等_第1张图片

对于这个软件,我的建议是,不建议用这个来开发,尤其是j2ee程序,这玩意必须是它生成的项目,里面有一些项目文件,你用这个软件时,只能修改它允许的代码块,不能随意做修改,而且你在j2ee项目里改了的代码,扔到这里面会被之前的修改覆盖掉,因此相当不方便,我的意思是用这个做出一些ui效果,然后考代码到

你的系统里,再进行一些细节上的修改就可以了

2,由于extjs跟服务器通讯都是ajax方式,那么一旦登录态失效后,你点击控件将会返回错误的结果,而不会得到任何提示,我的做法是,写一个全局的定时器,每隔固定时间轮训检查服务器的登录态,如果发现未登录,则弹出对话框让其登陆后再试,注意,点击确认按钮一定在新标签里

跳转到登陆页面,而不要覆盖当前页面,防止你的数据状态丢失,代码如下:

//启动一个定时任务,检查登录态是否还在,如果session过期,则弹出对话框,提示登陆,每隔指定的时间运行一次即可  
var checkLogin= {  
	run: function(){
		var base = document.getElementById("base").value;
		
		Ext.Ajax.request({    
			url : '/backend/isLogin',
			disableCaching: true,//禁止缓存    
			timeout: 30000,//最大等待时间,超出则会触发超时    
			method : "POST",  
			success:function(response, opts){    
				var result = Ext.JSON.decode(response.responseText);      //JSON对象化  
				if (result.success==false){  
					Ext.Msg.alert('提示信息','系统已经超时,请重新登陆!',function(){      
						window.open('/backend/login');
					});
				}
			},  
			failure:function(response, opts){  
				Ext.Msg.alert('提示信息','系统已经超时,请重新登陆!',function(){      
					window.open('/backend/login');
				});
				//Ext.TaskManager.stop(checkLogin);   
			}
		 })
   },
   interval: 10000 //1000=1秒 一分钟请求一次
}
Ext.TaskManager.start(checkLogin);
3,语法支持,刚刚推出不久的idea 14.1.x版本中支持 extjs语法,具体参考http://docs.sencha.com/extjs/5.1/tools/jetbrains_ide_plugin.html

你需要下载安装JetBrains Plugin插件才能做到,我感觉这玩意很不错,大家可以试试,之前没有这东西的时候,我总是在chrome的console下断点去看这个对象的函数和属性的

extjs5主题修改,登录,语法支持等_第2张图片

你可能感兴趣的:(登录,ExtJs,extjs5,extjs设计)