store totalLength extjs - PullRequest
       18

store totalLength extjs

0 голосов
/ 19 ноября 2011

У меня есть такой магазин:

var store = new Ext.data.Store({
    id: 'store',
    url: 'user-list',
    remoteSort: true,
    reader: new Ext.data.JsonReader({
        root: 'data',
        totalProperty: 'result',
        id: 'id'
    }, [....])
});
store.load({
    params: {
        start: 0,
        limit: myPageSize
    }
});

как я могу получить доступ к totalLength из моего массива. я использовал это следующее утверждение, но они не работали:

console.log(store.totalLength)

console.log(this.store.totalLength)

console.log(store.getTotalCount())

console.log(this.store.getTotalCount())

они возвращают неопределенный результат.

Результат JSON моего сервера выглядит так:

success:true

result:26

data:[Object]

Ответы [ 2 ]

1 голос
/ 23 ноября 2011

Вы должны указать URL внутри атрибута прокси.

var store = new Ext.data.Store({
      id:'store',  
      proxy: new Ext.data.HttpProxy({
        url: 'user-list'
    }),
      remoteSort: true,
      reader: new Ext.data.JsonReader(
          {
            root:'data',
            totalProperty: 'result',
            id:'id'
          }, [
            ....
          ]
      )
    });


store.load({
        params: {
            start: 0,          
            limit: myPageSize
        }
    });

Тогда попробуйте store.getCount(), этот метод работает нормально, с этим проблем нет.

1 голос
/ 20 ноября 2011

В ExtJS 3 и 4 вы можете использовать

store.getCount()

, чтобы вернуть количество записей в магазине

...