【问题标题】:In extjs 6 how to achieve the multiple instances of store assign to the same grid在extjs 6中如何实现store的多个实例分配到同一个grid
【发布时间】:2016-02-27 08:21:38
【问题描述】:

extjs 6中如何实现store的多个实例分配到同一个grid。

我创建了一个网格并通过在该视图的视图模型中创建商店来绑定商店,并通过“绑定”进行绑定

现在我想在多个选项卡中打开相同的网格..以便用户可以在两个差异选项卡中查看差异数据..因为我使用相同的网格和相同的商店如何实现这一点。

【问题讨论】:

    标签: extjs extjs5 extjs6


    【解决方案1】:

    你没有。将不同的网格实例放在不同的选项卡中,每个选项卡都有自己的商店。

    我想如果你真的必须这样做,你可以使用 tabchange 事件在选项卡更改时将存储换出,但这很麻烦。

    为什么你坚持只有一个网格实例?你想达到什么目的?

    【讨论】:

      【解决方案2】:

      好吧,通常情况下,你define网格一次:

      Ext.define('MyApp.view.Grid.ContentGrid',{
          extend:'Ext.grid.Panel',
          xtype:'ContentGrid',
          initComponent:function() {
              var me = this;
              Ext.apply(me,{
                  columns:[{
                      ...
                  }],
                  listeners:{
                      cellcontextmenu: function() {
                      }
                  }
              });
              me.callParent(arguments);
          }
      });
      

      然后,在视图中,您可以通过组件层次结构定义(或多或少静态)或 Ext.create(在运行时)尽可能频繁地使用它:

      Ext.define('Ext.Window',{
          layout:'card',
          items:[{
              xtype:'ContentGrid',
              store:'ABCStore',
          },{
              xtype:'ContentGrid',
              store:'DEFStore',
          }],
          listeners:{
              boxready:function(window) {
                  window.add(
                      Ext.create('MyApp.view.Grid.ContentGrid',{
                          store:'GHIStore'
                      })
                  );
              }
          }
      });
      

      【讨论】:

        猜你喜欢
        • 2018-11-21
        • 1970-01-01
        • 2022-01-19
        • 1970-01-01
        • 1970-01-01
        • 2017-10-04
        • 2012-01-13
        • 1970-01-01
        • 2017-06-03
        相关资源
        最近更新 更多