ExtJS 5-网格的分页工具栏不能与内存代理一起使用

大卫·福斯特(David Foster)

我正在使用内存代理在存储中加载内联数据并启用分页,但是问题是我的分页工具栏仅显示数据的第一页。“下一步”箭头按钮也不会更新网格。我在底部有指向图像的链接,以显示网格面板的外观。

这是我的商店:

Ext.define('PagingBug.store.MyGrid', {
    extend: 'Ext.data.Store',
    alias: 'store.mygrid',

    data: [
       [ 'Data1', 'Something1' ],
       [ 'Data2', 'Something2' ],
       [ 'Data3', 'Something3' ],
       [ 'Data4', 'Something4' ],
       [ 'Data5', 'Something5' ],
       [ 'Data6', 'Something6' ],
       [ 'Data7', 'Something7' ],
       [ 'Data8', 'Something8' ]
    ],

    fields: [
        {name: 'field1'},
        {name: 'field2'}
    ],

    pageSize: 5,

    proxy: {
        type: 'memory',
        enablePaging: true,
        reader: {
            type: 'array'
        }
    }
});

这是我的看法:

Ext.define('PagingBug.view.main.Main', {
    extend: 'Ext.container.Container',
    requires: [
        'PagingBug.store.MyGrid'
    ],

    xtype: 'app-main',

    items: [{
        xtype: 'gridpanel',
        store: {
            type: 'mygrid'
        },
        columns: [
                {text: 'Field 1', dataIndex: 'field1'},
                {text: 'Field 2', dataIndex: 'field2'}
        ],
        dockedItems: [{
            xtype: 'pagingtoolbar',
            store: {
                type: 'mygrid'
            },
            dock: 'bottom',
            displayInfo: true
        }],
    }]
});

网格面板的图像:

http://i.stack.imgur.com/PCqSC.png

http://i.stack.imgur.com/S8CXU.png

有人可以指出我做错了什么吗?谢谢。

使者

对您而言,这实际上是一个非常微妙的错误。在你的Main类,你要定义的存储配置type: 'mygrid'你的gridpanel,你再定义存储配置第二次pagingtoolbar-这是创建两个单独的存储实例,并随后混淆工具栏组件。

您仍然可以通过声明方式解决此问题,方法是在中定义您的商店,viewModel然后将引用绑定到两个组件上的同一商店,例如:

Ext.define('PagingBug.view.main.Main', {
    extend: 'Ext.container.Container',
    requires: [
        'PagingBug.store.MyGrid'
    ],

    viewModel: {
        stores: {
            myGridStore: {
                type: 'mygrid'
            }
        }   
    },

    xtype: 'app-main',

    items: [{
        xtype: 'gridpanel',
        bind: '{myGridStore}',
        columns: [
            {text: 'Field 1', dataIndex: 'field1'},
            {text: 'Field 2', dataIndex: 'field2'}
        ],
        dockedItems: [{
            xtype: 'pagingtoolbar',
            bind: '{myGridStore}',
            dock: 'bottom',
            displayInfo: true
        }],
    }]
});

»小提琴

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

以extjs 5形式更改页脚工具栏宽度

来自分类Dev

ExtJS4.2轮播无法与ExtJS5一起使用

来自分类Dev

从extjs网格访问工具栏

来自分类Dev

使用ExtJs5定义名称空间

来自分类Dev

使用ExtJs5定义名称空间

来自分类Dev

Extjs-分页工具栏:分页不使用服务器代理保留先前的请求(store.load)

来自分类Dev

溢出时不会更新工具栏中的ExtJS 5标签

来自分类Dev

默认使用rowexpander扩展所有网格行-EXTJS 5

来自分类Dev

extjs 5 getStore()。filter

来自分类Dev

ExtJS5:摆脱代理中的根属性

来自分类Dev

ExtJS5:摆脱代理中的根属性

来自分类Dev

EXTJS 5树网格自定义行CSS

来自分类Dev

Extjs 5 getPlugin不适用于网格

来自分类Dev

页面更改后的Extjs 5网格绑定

来自分类Dev

Extjs 5网格同步行渲染问题

来自分类Dev

ExtJS 5-具有动态内容的工具提示

来自分类Dev

ExtJs 5:带内存的组合框不显示数据

来自分类Dev

如何在Extjs 4中为Extjs 5使用配置系统?

来自分类Dev

Extjs-分页工具栏禁用下一页和上一页

来自分类Dev

ExtJS5 ViewModel使用全局声明的存储

来自分类Dev

ExtJS 5饼图无法使用远程存储呈现

来自分类Dev

如何使用sencha cmd复制ExtJS 5示例?

来自分类Dev

EXTJS 5和PHP使用准备好的语句创建

来自分类Dev

ExtJS 5饼图未使用远程存储呈现

来自分类Dev

EXTJS 5和PHP使用准备好的语句创建

来自分类Dev

向Extjs工具栏添加图标

来自分类Dev

EXTJS 5:如何在EXT JS 5中对网格列进行排序

来自分类Dev

ExtJS5 CellClick事件

来自分类Dev

extjs 5中的多重分组