2016-08-09 2 views
1

私はこれらの二つのソースの下に使用していますSencha ExtJS v6のストアの読み込み操作を中止またはキャンセルする方法は?

それらのどれもが、ExtJSに私はロード操作をキャンセルする可能性がどのように

のバージョン6で有効ではありません新しい操作が始まるたびに? ExtJSののバージョン6.0.2では

答えて

2

いくつかのものは変更されているとOperationクラスがあり、abort方法

何getOperationメソッドはありませんが、操作をつかむのに便利ですbeforeloadあります。

1つ以上の操作を収集すると、新しい操作を開始する前に安全にabortを呼び出すことができます。

次活字体クラスが助けになるでしょう:forcelyユーザーによってキャンセルされたリクエストのstatusCodeであることを

module ext_ts { 
interface Abortable { 
    abort(): void 
} 

export class AutoAbortPreviousOperation { 
    private _storeOperations: Array<Abortable> = [] 

    applyOnStore(store): any { 
     let me = this 

     return store.on({ 
      destroyable: true, 
      beforeload: function (theStore, operation, eOpts) { 
       let lastOperation = me._storeOperations.pop() 

       if (lastOperation) { 
        console.log("aborting previous operation safely") 

        lastOperation.abort() //this abort is safe so no need to check !lastOperation.isComplete() 
       } else { 
        //nop 
       } 

       me._storeOperations.push(operation) //add this operation for later usage 

       return true //let the loading begin 
      } 
     }) 
    } 
} 
} 

注:-1

便利なリンク:

関連する問題