Extjs4 似bug非bug的东西修改
/** hzm modify
* method: Ext.panel.Table.hasLockedColumns: function(columns) {}
* function:支持extjs grid colums三元表达式,tbar支持三元表示
eg: user.users_type == 2 ? {text: "创建日期", flex: 1, dataIndex: 'create_time'} : null,
var grid = Ext.create('Ext.grid.Panel', {
columns: [
new Ext.grid.RowNumberer(),
user.users_type == 1 ? {text: "创建日期", flex: 1, dataIndex: 'create_time'} : null,
{text: "备注", flex: 1, sortable: true, dataIndex: 'remark'}
]
}); user.users_type == 1 ? {
text:'添加会员',
iconCls:'add',
handler:function() {
MyDesktop.MemberWindow.member.addOrUpdateMember();
}
} : null,
user.users_type == 1 ? '-' : null
* note: 添加if判断column是否为空 //源代码:
if (!column.processed && column.locked) {
return true;
}
*/
Ext.override(Ext.panel.Table, {
hasLockedColumns: function(columns) {
var i,
len,
column; if (Ext.isObject(columns)) {
columns = columns.items;
}
for (i = 0, len = columns.length; i < len; i++) {
column = columns[i]; if (column && !column.processed && column.locked) {
return true;
}
}
}
}); /**
* hzm modify
* method: Ext.data.Connection.onComplete : function(request, xdrResult)
* function: gridpanel数据加载出错时(服务器内部错误),支持返回错误原因
*/
Ext.override(Ext.data.Connection, {
onComplete : function(request, xdrResult) {
var me = this,
options = request.options,
result,
success,
response; try {
result = me.parseStatus(request.xhr.status);
} catch (e) {
// in some browsers we can't access the status if the readyState is not 4, so the request has failed
result = {
success : false,
isException : false
}; }
success = me.isXdr ? xdrResult : result.success; if (success) {
response = me.createResponse(request);
me.fireEvent('requestcomplete', me, response, options);
Ext.callback(options.success, options.scope, [response, options]);
/**
* hzm modify start
* method: Ext.data.Connection.onComplete : function(request, xdrResult)
* function: gridpanel数据加载出错时(服务器内部错误),支持返回错误原因
* note: 原生系统,无以下段代码
*/
if(response && options.operation && !options.operation.response) {
options.operation.response = response;
}
/*
* modify end
*/
} else {
if (result.isException || request.aborted || request.timedout) {
response = me.createException(request);
} else {
response = me.createResponse(request);
}
me.fireEvent('requestexception', me, response, options);
Ext.callback(options.failure, options.scope, [response, options]);
} Ext.callback(options.callback, options.scope, [options, success, response]);
delete me.requests[request.id];
return response;
}
}); /**
* hzm modify
* method: Ext.selection.Model.getSelection : function()
* function: 当修改并reload后未更新当前grid selected range中的record
*/
Ext.override(Ext.selection.Model, {
getSelection: function() {
var me = this,
store = me.store,
arr = this.selected.getRange(); for(var i = 0; arr && i < arr.length; i++) {
try {
var record = arr[i];
var newRecord = store.getById(record.get(record.idProperty));
if(newRecord) {
arr[i] = newRecord;
}
} catch(e) {
alert('ext_override getSelection出现异常,详细信息:' + e);
}
}
return arr;
}
});
Extjs4 似bug非bug的东西修改的更多相关文章
- FIREDAC(DELPHI10 or 10.1)提交数据给ORACLE数据库的一个不是BUG的BUG
发现FIREDAC(DELPHI10 or 10.1)提交数据给ORACLE数据库的一个不是BUG的BUG,提交的表名大小写是敏感的. 只要有一个表名字母的大小写不匹配,ORACLE就会认为是一个不认 ...
- ORA-01791: not a SELECTed expression 一种是不 bug 的 bug!
[ora11@lixora ~]$ !sql sqlplus / as sysdba SQL*Plus: Release 11.2.0.1.0 Production on Wed Aug 27 09: ...
- oracle已知会导致错误结果的bug列表(Bug Issues Known to cause Wrong Results)
LAST UPDATE: 1 Dec 15, 2016 APPLIES TO: 1 2 3 4 Oracle Database - Enterprise Edition - Versi ...
- 禅道项目管理软件 为提交Bug页面设置bug必填字段
为提交Bug页面设置bug必填字段 by:授客 QQ:1033553122 测试环境: 禅道项目管理软件7.1.stable版本 注:仅适合windows版 步骤1.找到xampp\zentao\mo ...
- 如何在修改bug时切换分支保留修改又不提交
使用git的时候,我们往往使用branch解决任务切换问题,例如,我们往往会建一个自己的分支去修改和调试代码, 如果别人或者自己发现原有的分支上有个不得不修改的bug,我们往往会把完成一半的代码 co ...
- 疑似easyui本身bug:easyui时间控件问题,试了几个版本都不行
最近发现easyui时间控件的值格式不支持带斜杠的日期(2016/10/31),必须是2016-10-31这类的才能正常使用,否则默认初始化为当前时间 <input id="Retur ...
- 【转】小议Bug敏感度---Bug敏感度的故事(一)
在测试圈中,相信大家对“Bug敏感度”这一词并不陌生,但是Bug敏感度具体是指什么呢,本文对此关键词进行解读的基础上,对其与软件质量的关系,影响的关键因素,如何提高测试人员的bug敏感度进行分享.(- ...
- 关于起点中文网的一个我自认为是BUG的BUG(花了我一毛三分钱才实验出来的)
因为最近在学关于网页的东西,所以便有了每看一个网页,总得先看看这个网页的源码的习惯. 突然我就想到了,起点中文网在看小说的界面是不允许复制粘贴,甚至连点右键都不会有反应, 那么如果我查看源码,能否复制 ...
- 浏览器css bug及bug解决方法
Bugs及解决方案列表(以下实例默认运行环境都为Standard mode): 如何在IE6及更早浏览器中定义小高度的容器? 方法: #test{overflow:hidden;height:1px; ...
随机推荐
- express 创建项目
express 创建项目: 1.熟悉express命令 2.创建模板 3.安装组件
- Unity中FSM有限状态机
什么是FSM FSM 即有限状态机,它是一个状态管理系统,表示一个对象的几种状态在指定条件下转移行为,即随着条件的不断改变内部状态不断地切换. FSM用处或者使用背景 通常使用FSM去实现一些简单的A ...
- 解决通过vmware克隆虚拟机后,无法上网的问题
注意:如果源主机是CentOS 6.8,复制出来的机器会出现无法上网. 如果源主机是CentOS 7,复制出来的机器可以正常上网.复制后,只要改下IP地址即可上网. 出现该问题的原因是,我们克隆后,将 ...
- webpack的devtool
这里以环境分类为分析方向 1.对开发环境 eval - 每个模块都使用 eval() 执行,并且都有 //@ sourceURL.此选项会非常快地构建.主要缺点是,由于会映射到转换后的代码,而不是映射 ...
- 基于第三方开源库的OPC服务器开发指南(4)——后记:与另一个开源库opc workshop库相关的问题
平心而论,我们从样例服务器的代码可以看出,利用LightOPC库开发OPC服务器还是比较啰嗦的,网上有人提出opc workshop库就简单很多,我千辛万苦终于找到一个05年版本的workshop库源 ...
- iOS进阶一OC对象的本质
OC对象的本质 平时编写的Object-C代码,底层实现其实都是C/C++代码. 所以Objective-C的面向对象都是基于C/C++的数据结构实现的,OC对象内部可以容纳不同数据类型的数据,因此可 ...
- override new 的区别
override : 方法提供从基类继承的成员的新实现. 通过 override 声明重写的方法称为重写基方法. 重写基方法必须具有与 override方法相同的签名 new : 关键字可以显式隐藏从 ...
- 思维题+栈的应用——cf1092D有意思
第一例很简单,把两个差为偶数的列不断合并即可 这种不需要撤销的合并相连数直接用栈来做 /* 如果相邻两列高度差为偶数 那么可以直接消去 */ #include<bits/stdc++.h> ...
- DelphiHookApi(经典)
论坛里有关于HOOK API的贴子, 但其实现在方式显示得麻烦, 其实现在拦截API一般不用那种方式, 大都采用inline Hook API方式.其实也就是直接修改了要拦截的API源码的头部,让它无 ...
- LUOGU P2290 [HNOI2004]树的计数(组合数,prufer序)
传送门 解题思路 \(prufer\)序,就是所有的不同的无根树,都可以转化为唯一的序列.做法就是每次从度数为\(1\)的点中选出一个字典序最小的,把这个点删掉,并把这个点相连的节点加入序列,直到只剩 ...