ExtJS 4 enableBufferをfalseに設定しても無駄です
1893 ワード
この問題はExtJS 4にのみ存在する.2.0バージョンでは、ExtJS 4.2.1では修復されているので、手動で修正する必要はありません.
フロントエンドはExtJS 4.2
サービス側はextdirectspringであり、extdirectspringの構成は以下の通りである.
configuration.setEnableBuffer(false)は、Extが一度にサーバ側に送信するrequestをキャッシュしないことを示しているが、設定後に動作しない理由を発見した.ExtJS 4.2にバグがあります.4.2以降は修復すべきです.ここでext-all-debugを持ってください.jsは修正する必要がある場所を説明して、とても簡単で、私はすでに明記して、あなたは1行だけ注釈して、新しく1行追加すればいいです.
フロントエンドはExtJS 4.2
サービス側はextdirectspringであり、extdirectspringの構成は以下の通りである.
/**
* Configuration class to configure different aspects of extdirectspring.
*/
@Bean
public ch.ralscha.extdirectspring.controller.Configuration configuration(){
ch.ralscha.extdirectspring.controller.Configuration configuration=new ch.ralscha.extdirectspring.controller.Configuration();
configuration.setBatchedMethodsExecutionPolicy(BatchedMethodsExecutionPolicy.SEQUENTIAL);
configuration.setEnableBuffer(false);
return configuration;
}
configuration.setEnableBuffer(false)は、Extが一度にサーバ側に送信するrequestをキャッシュしないことを示しているが、設定後に動作しない理由を発見した.ExtJS 4.2にバグがあります.4.2以降は修復すべきです.ここでext-all-debugを持ってください.jsは修正する必要がある場所を説明して、とても簡単で、私はすでに明記して、あなたは1行だけ注釈して、新しく1行追加すればいいです.
queueTransaction: function(transaction) {
var me = this,
enableBuffer = me.enableBuffer;
if (transaction.form) {
me.sendFormRequest(transaction);
return;
}
if (typeof transaction.timeout !== 'undefined') {
me.sendRequest(transaction);
return;
}
//
me.callBuffer.push(transaction);
if (enableBuffer) {
//
//me.callBuffer.push(transaction);
if (!me.callTask) {
me.callTask = new Ext.util.DelayedTask(me.combineAndSend, me);
}
me.callTask.delay(Ext.isNumber(enableBuffer) ? enableBuffer : 10);
}
else {
me.combineAndSend();
}
},