簡體   English   中英

如何恢復extjs4存儲?

[英]how to recover an extjs4 store?

模型:

Ext.define('Voting', {
    extend: 'Ext.data.Model',
    hasMany: [
        {model: 'VotingQuestion', name: 'questions'}
    ]
}

和:

grid.bindStore(voting.questions())

然后使用RowEditing添加/編輯/刪除/重新排序網格

之后,如果我單擊“取消”按鈕, 是否有任何簡單的方法可以將“問題”恢復到初始狀態(從服務器重新加載存儲除外)?

謝謝

這取決於您如何實現行編輯功能。 如果您使其能夠實時保留更改,那么恐怕您將不得不致電服務器以將其恢復為初始狀態。

如果您將少量事務的狀態保存在客戶端,則可以使用UnDo / ReDo工具,用戶無需服務器調用即可撤消或重做上一個事務。 從根本上來說,這是一個設計決策,是您希望每次編輯都進行網絡聊天,還是要具有由多個事務組成的粗粒度數據持久性。

您將必須小心並注意應用程序是否設計用於高級別的並發訪問,而不是必須構建用於處理數據完整性的其他機制。

您可以看一下extjs時間軸,其目標狀態

時間線項目是ExtJS接口庫的擴展。 它的目標很簡單:

 Provide a framework for undo/redo of user events. Be generic enough for widespread basic use. Be extensible enough for easy customization. Be free to everyone, for any purpose, personal or commercial. 

編輯: 檢查此示例,這也具有延遲的持久化數據機制。

也許不直接是您想要的,但是您是否嘗試過

 grid.getStore().each(function(record){
      record.reject();
 })

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM