锁定老帖子 主题:打造Ext2.0模块化单页系统Demo
精华帖 (1) :: 良好帖 (1) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-10-28
goodboy 写道 弱弱的问一句:能不能增加模块变量,用于模块js,比如我想取自定义的node.attributes.ids值用在模块js中,如何作?
修改这个方法就可以 //点击菜单方法(node:被点击的节点) clickTree: function(node){ //如果节点不是叶子则返回 if(!node.isLeaf()){ return false; } var id = 'tab-' + node.attributes.ids; var tab = Ext.getCmp(id); if(!tab){ tab = this.body.add(new Ext.Panel({ id: id, title: node.text, layout: 'fit', closable: true })); this.body.setActiveTab(tab); //加载模块 this.loadModel(node.attributes.ids,tab); }else{ this.body.setActiveTab(tab); } }, |
|
返回顶楼 | |
发表时间:2008-10-30
tbar: [{ iconCls:'btn-save', text: '保存', handler:function(){ this.body.form.submit({ waitMsg:'正在保存。。。', url:"zcadd.php", method:'POST', success:function(){ Ext.Msg.alert("提示信息","数据保存成功!"); }, scope:this }); } ///////////////////////////// 在添加表单那个模块中我增加了保存的hanler, 为什么this.body.form.submit这一句会提示错误this.body is undefined?? |
|
返回顶楼 | |
发表时间:2008-11-12
pioul 写道 tbar: [{ iconCls:'btn-save', text: '保存', handler:function(){ this.body.form.submit({ waitMsg:'正在保存。。。', url:"zcadd.php", method:'POST', success:function(){ Ext.Msg.alert("提示信息","数据保存成功!"); }, scope:this }); } ///////////////////////////// 在添加表单那个模块中我增加了保存的hanler, 为什么this.body.form.submit这一句会提示错误this.body is undefined?? 把this.body 改成一个自己定义的变量就ok了,如:var formbody = 。。。。,然后 formbody.form.submit |
|
返回顶楼 | |
发表时间:2008-11-26
我用类似于楼主的Demo的方式实现了一个系统,但是我用EXT.dataview时,用this.main.doLayout();页面不显示。是不是我还得实现什么方法?
|
|
返回顶楼 | |
发表时间:2008-11-27
hany 写道 我用类似于楼主的Demo的方式实现了一个系统,但是我用EXT.dataview时,用this.main.doLayout();页面不显示。是不是我还得实现什么方法? 昨天犯晕了。是数据的问题。 |
|
返回顶楼 | |
发表时间:2008-12-03
我怎么用的时提示 “缺少对象”脚本错误,
就是这一行: model = this[id](tab), 或者是“加载核心文件失败!” 是怎么回事呢? |
|
返回顶楼 | |
发表时间:2009-04-11
最后修改:2009-04-11
//定义程序的命名空间 Ext.namespace('demo'); demo.module = function(main){ this.main = main; this.init(); } Ext.extend(demo.module, Ext.util.Observable, { init : Ext.emptyFn }); demo.app = function(){ this.init(); } Ext.extend(demo.app, Ext.util.Observable, { init: function(){ this.tab1 = new Ext.Panel({ title: '模块一', id: 'module1', layout: 'fit' }); this.tab2 = new Ext.Panel({ title: '模块二', id: 'module2', layout: 'fit' }); this.tab3 = new Ext.Panel({ title: '模块三', id: 'module3', layout: 'fit' }); //系统状态栏item var date = new Ext.Toolbar.TextItem(new Date().toLocaleDateString() +' 星期'+'日一二三四五六'.charAt(new Date().getDay())); var clock = new Ext.Toolbar.TextItem(''); this.statusbar = new Ext.Panel({ id: 'my-status-panel', region:'south', margins:'5 5 0 5', layout: 'fit', bbar: new Ext.StatusBar({ id: 'my-status', defaultText: '版权信息', items: [date,' ',clock] }), listeners: { 'render': { fn: function(){ Ext.fly(date.getEl().parentNode).addClass('x-status-text-panel').createChild({cls:'spacer'}); Ext.fly(clock.getEl().parentNode).addClass('x-status-text-panel').createChild({cls:'spacer'}); Ext.TaskMgr.start({ run: function(){ Ext.fly(clock.getEl()).update(new Date().format('H:i:s')); }, interval: 1000 }); } } } }); this.body = new Ext.TabPanel({ region:'center', margins:'0 5 0 5', autoScroll: true, items: [this.tab1, this.tab2, this.tab3] }); var viewport = new Ext.Viewport({ layout:'border', items:[ new Ext.BoxComponent({region:'north', el:'header', height:60}), this.body, this.statusbar ] }); this.body.on('tabchange', this.tabActive, this); this.loadMask = new Ext.LoadMask(this.body.body); this.body.activate(this.tab1); }, tabActive: function(p,t){ if(this[t.id]){ return false; } this.loadMask.show(); Ext.Ajax.request({ method:'GET', url: 'modules/'+t.id+'.js', scope: this, success: function(response){ var module = eval(response.responseText); this[t.id] = new module(t); this.loadMask.hide(); } }); } }); Ext.BLANK_IMAGE_URL = 'resources/images/default/s.gif'; Ext.onReady(function(){ Ext.QuickTips.init(); myApp = new demo.app(); }); 提示:缺少对象。 好像是Ext.Statusbar的问题。 不知如何解决? |
|
返回顶楼 | |
发表时间:2009-04-11
最后修改:2009-04-11
goodboy 写道 基本能够运用了,使用起来确实比使用iframe强多了,感谢搂主啊!
只是感觉不能加载Viewport,布局有点局限。 初次接触Ext,我很欣喜,一直用的很长时间,后台慢慢的就不用了,Ext的主要作用在于漂亮的美观,中大型系统中不建议使用ext来写,会带来很多的麻烦,程序员一边要关注后台的代码一边还要关注前台的ext代码,这样是吃不消的,而且目前国内的状况,既要有后台程序员又有前台UI程序员的不多,实际上很多人都在一个人写,包括我自己,这样的话我宁愿找一个美工,自己只关注后台,既省事又不必Ext差,好的美工做的web页面是Ext远远比不了的! |
|
返回顶楼 | |