2012-07-09 95 views
1

我需要根據我擁有的一些信息更新商店。如何查找表並將新記錄添加到其商店?

我在文檔中有一個表,它使用一些存儲來保存數據, ,並在頁面的單獨部分我有一個按鈕,需要添加一些信息到存儲(和表)。我有點困惑,所以,我只是在這裏問我需要知道的全部內容:

  1. 需要指定表配置中的哪個屬性以便稍後查找表?
  2. 我需要做哪些調用以查找表並找到其商店?
  3. 我如何生成數據並將其附加到表的現有商店?

回答

3

您所指的「表」是ExtJS術語中的Grid

1.要獲得網格供以後使用,您需要對該對象的引用。 ExtJS有很多方法可以獲得這個參考。

使用Javascript變量:最簡單的方法是有一個JavaScript變量,將舉行參考。這通常在創建網格時完成。例如:

var myGrid = Ext.create('Ext.grid.Panel', { 
    // All the configs... 
}); 

您可以使用myGrid變量訪問網格。

使用ComponentManager:創建ExtJS組件時,它會在組件管理器中註冊。您始終可以從該寄存器中獲取ExtJS組件。經理使用唯一的ID跟蹤每個組件。要使用此方法,您必須爲您的網格組件定義唯一的ID,然後使用着名的Ext.getCmp()方法。以下是一個示例:

var myGrid = Ext.create('Ext.grid.Panel', { 
     id: 'myGrid', // Unique id for the grid 
    // All other configs... 
}); 

使用此方法不是最佳實踐。

使用itemId和組件查詢:比上述兩種更好的方法;您可以使用itemId config和ComponentQuery。 ComponentQuery類爲類似於DOM查詢的Sencha組件提供了基於選擇器的搜索。例如:

var myGrid = Ext.create('Ext.grid.Panel', { 
     itemId: 'myGrid', 
    // All other configs... 
}); 

並得到一個參考,你可以從一個容器調用query()方法或使用Ext.ComponentManager(這是全球性的)。

訪問MVC控制器:如果您正在使用MVC開發您的應用程序,則可以使用此方法。一個控制器有參考數組,即:refs。 (在內部,該方法使用ComponentQuery和選擇器來訪問組件)。 getStore():參考MVC指南和例子來看看它是如何工作..


2.一旦你獲得與上述任何技術的網格,你可以簡單地通過調用方法拿到店裏。這會返回商店對象( Ext.data.Store)。例如:

myStore = myGrid.getStore(); 


3.參閱的 Ext.data.Store文檔。你可以使用像 add(), load(), remove()等方法來操縱你的網格商店...

1

FYI。 這不是

Ext.Cmp() 

Ext.getCmp('myGrid') 
相關問題