首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无限滚动网格和MVC

无限滚动网格和MVC
EN

Stack Overflow用户
提问于 2012-04-26 12:19:05
回答 2查看 1.2K关注 0票数 0

假设我们遵循一篇原创文章http://www.sencha.com/learn/the-mvc-application-architecture,并拥有这样的存储:

代码语言:javascript
复制
Ext.define('AM.store.Users', {
    extend: 'Ext.data.Store',
    model: 'AM.model.User',
    autoLoad: true,

    proxy: {
        type: 'ajax',
        url: 'data/users.json',
        reader: {
            type: 'json',
            root: 'users',
            successProperty: 'success'
        }
    }
});

我们决定实现一个无限滚动的网格。为此,我们需要删除autoLoad: true并手动调用store.guaranteeRange(...)

那么,最好的地方是什么呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-27 04:17:50

代码语言:javascript
复制
Ext.define('AM.store.Users', {
    extend: 'Ext.data.Store',
    model: 'AM.model.User',
    autoLoad: true,
    remoteSort: true,
    buffered: true,
    pageSize: 100,
    proxy: {
        type: 'ajax',
        url: '/postdata/list',
        limitParam: 'size',
        startParam: undefined,
        reader: {
            type: 'json',
            root: 'data',
            successProperty: 'success'
        }
    }
});

在这里演示http://ext4all.com/post/extjs-4-1-grid-infinite-scroll-in-mvc

票数 1
EN

Stack Overflow用户

发布于 2012-04-26 20:00:17

渲染栅格的位置。您可以覆盖afterRender()方法,或者如果它是模式网格/对话框-在呈现它之前加载存储。

附注(我想指出的是,对于所有商店,autoLoad通常都是false

  • 如果您要在应用程序中使用任何身份验证,则必须在所有商店上禁用autoLoad
  • 如果你有更多的商店(比如5-10+?)强烈建议您也将其禁用。您不希望在应用程序启动时同时加载所有这些应用程序。
  • 通常,您需要确保在加载存储之后发生了某些事情,然后再次禁用autoLoad,订阅load事件并手动加载存储。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10327180

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档