ExtJS 4 Change grid store on the fly

前端 未结 4 1468
佛祖请我去吃肉
佛祖请我去吃肉 2021-01-31 09:54

Is it posible to change grid\'s store in ExtJS 4?

For example, i have two models:

User = Ext.define(\'User\',{
  extend: \'Ext.data.Model\',
  [...],
  h         


        
4条回答
  •  星月不相逢
    2021-01-31 10:04

    You are looking at stores the wrong way. A store is attached to the grid forever, hence there is no grid.setStore(). You do NOT change a store for a grid, instead you change the DATA in the store for that grid.

    Now, solution to your problem: You are correct with the part that you already have a instance of store with your data. ie; user.products(). Still, you will have to create a store for your grid. This store will not have any data though. Now, when you need to display products information, you need to load the grid's store with data. You can use:

    • load()
    • loadData()
    • loadRecord()

    to load data into your store. In your case, you can do the following:

    myStore = user.products();
    grid.getStore().loadRecords(myStore.getRange(0,myStore.getCount()),{addRecords: false});
    

提交回复
热议问题