Redmine客户端项目问题汇总
2012-12-02 10:55
267 查看
1.TypeError: 'undefined' is not an object (evaluating 'firingFn.apply'):函数名出现错误;
2.当使用Ext.Container类的时候,一定要使用layout属性,通常设置为fit,不然会出现界面显示不出来的问题,同时Ext.form.Panel类不需要设置layout属性
3.实例化一个类的时候,使用xtype属性创建和Ext.create创建实例的效果不一样:如果在类里面使用xtype属性创建实例,会导致这个实例的方法不可用。而Ext.create则不会出现这种情况。
4.以下创建一个button实例的代码,在mvc模式下面,必须指明scope的范围为this,
其参数record可以随着fireEvent函数一起被传入到controller类里面去,并且可以从record里面直接调用get方法来取出数据,代码如下:
5.对list的item进行分组以及排序:
a.分组:
分组涉及到2个地方:
一个是store里面,添加grouper属性,代码如下:
如果需要对分组添加indexBar的话,只需要在list的属性里面设置属性indexBar,代码如下:
b.排序:排序只需要在一个地方设置就好,设置store的属性sorters,代码如下:
2.当使用Ext.Container类的时候,一定要使用layout属性,通常设置为fit,不然会出现界面显示不出来的问题,同时Ext.form.Panel类不需要设置layout属性
3.实例化一个类的时候,使用xtype属性创建和Ext.create创建实例的效果不一样:如果在类里面使用xtype属性创建实例,会导致这个实例的方法不可用。而Ext.create则不会出现这种情况。
4.以下创建一个button实例的代码,在mvc模式下面,必须指明scope的范围为this,
var logout = { xtype:'button', text:'Logout', handler:this.onLogout, scope:this };才可以在定义函数里面使用fireEvent方法:
onLogout:function(){ this.fireEvent('onLogout',this); }另外需要注意的是,不可以在handler的函数里面传参数,比如以下代码:
var logout = { xtype:'button', text:'Logout', handler:this.onLogout(param),//不可以传入参数,因为函数名onLogout后面的圆括号会导致该函数被执行,在handler函数调用之前就已经被执行了 scope:this };
onLogout:function(param){ console.log('onLogout is tapped in Projects'); this.fireEvent('onLogout',this); }那么参数是怎么传递的呢?这个参数的传递由handler的处理函数内定决定了的,我们无法决定可不可以传入参数。比如以下函数就可以传入参数:
projectsList = Ext.create('Ext.dataview.List',{ itemTpl:'name: {name}<br> id: {id} identifier:{identifier} ', store:projectsStore, onItemDisclosure:true, listeners:{ disclose:{ fn:this.onProjectsItem,//这里并没有传入参数,但是在函数定义的时候的确有参数,而且,当disclose事件发生的时候,其中的参数可以被使用,record里面包含了当前item的数据 scope:this } } }); onProjectsItem:function(projectsList,record){//注意该函数参数的顺序,这个函数可以在sencha touch里面查到,其参数个数和顺序也已经由sencha touch文档决定了,尽管函数名(onProjectsItem)是我们自由定义的,但是,可以说,事件(disclose)就已经决定了这个我们自定义的执行函数能否带参数,以及带几个参数! this.fireEvent('onProjectsItem',this,record);// }
其参数record可以随着fireEvent函数一起被传入到controller类里面去,并且可以从record里面直接调用get方法来取出数据,代码如下:
onProjectsItem:function(projectsList,record){//函数参数传递的时候,必须要连带参数一起传过来 currProjectIdentifier = record.get('identifier');//直接通过get方法从list的当前item的参数record里面取出数据! }
5.对list的item进行分组以及排序:
a.分组:
分组涉及到2个地方:
一个是store里面,添加grouper属性,代码如下:
grouper: { groupFn: function(record) { return record.get('name')[0].toUpperCase();//其中name是model中的某个字段,[0]是该字段值的第一个字符,后面的toUpperCase方法奖该字符转换为大写 }一个是在list组件里添加属性grouped,代码如下:
grouped:true
如果需要对分组添加indexBar的话,只需要在list的属性里面设置属性indexBar,代码如下:
indexBar: true
b.排序:排序只需要在一个地方设置就好,设置store的属性sorters,代码如下:
sorters: [{ property: 'name', direction: 'DESC'}]
相关文章推荐
- H5项目常见问题汇总及解决方案
- android项目迁移到新android studio所遇到的Gradle问题汇总
- H5项目常见问题汇总及解决方案
- H5项目常见问题汇总及解决方案
- 64位系统web项目导出excel问题分析及解决方法汇总
- 项目从mysql移植到SQL sqlserver问题汇总
- maven项目使用svn相关问题汇总
- Oracle学习总结(3)——Navicat客户端连接Oracle数据库常见问题汇总
- 关于使用ABP框架搭建的项目升级时需要注意的问题汇总
- Servlet & Jsp 项目搭建问题汇总
- netbeans maven项目问题汇总
- H5项目常见问题汇总及解决方案
- Maven构建Web项目问题汇总
- nuxt.js express模板项目虚拟目录部署问题汇总
- Myeclipse学习总结(15)——Eclipse/MyEclipse中Maven项目常见问题解决汇总
- YII做项目问题汇总<一>
- Delphi在C/S架构项目中考虑到SQLServer客户端断电的用户登录问题
- java项目发布到sae上遇到的问题汇总
- Java项目中超时问题解决方案汇总--解决cxf 时间 等待问题 bug~~~~
- net项目发布到IIS上一系列问题汇总