Стартовая страница ExtJS Paging Toolbar - PullRequest
0 голосов
/ 03 ноября 2010

У меня есть ExtJS GridPanel с магазином и панелью инструментов подкачки внизу. Я могу вручную установить стартовую страницу через браузер, используя:

www.someurl.com/page/7

Это правильно загрузит хранилище данных со страницы 7. Тем не менее, панель инструментов подкачки не обновляет номер страницы из хранилища (она по-прежнему показывает 1). У меня сложилось впечатление, что при смене страницы магазина также меняется страница на панели инструментов подкачки, но это не тот случай. Вот пример кода:

var _store = new Ext.data.Store({
  id          : 'store_id',
  remoteSort  : true,
  autoDestroy : true,
  restful     : true,
  proxy       : _proxy,
  reader      : _reader,
  writer      : _writer
});

var _pagingToolbar = new Ext.PagingToolbar({
  displayInfo    : true,
  pageSize       : 20,
  store          : _store
});

_I.grid = new Ext.ux.GridPanel({
 id             : _I.options.id+'_grid',
 title          : _I.options.title,
 store          : _store,
 bbar        : _pagingToolbar
});


_I.options.page = 7; //start store on page 7

_I.grid.render('somediv');
_store.load({params:{start:_I.options.page, limit:20, sort:'id', dir:'ASC'}});

Поскольку для начальной страницы установлено значение 7, данные, которые загружаются в хранилище, верны, однако на странице панели инструментов подкачки отображается значение 2. Я попытался вручную установить страницу с помощью

_pagingToolbar.changePage(20); // should set page to 20

Я получаю тот же результат, хранилище данных загружает правильную страницу, однако текст панели инструментов не изменяется. Порядок неправильный? Я также попытался загрузить хранилище до отображения сетки, но безрезультатно, с тем же результатом.

Ответы [ 2 ]

1 голос
/ 04 ноября 2010

Поскольку хранилище и панель подкачки неразрывно связаны, вы просто сможете использовать метод .changePage(n) для изменения страницы и автоматически настроить содержимое хранилища.Вам также не нужно кодировать магазин с обновлением набора записей.Кроме того, вы на 100% уверены, что в магазине отображаются правильные записи для страницы «7»?

0 голосов
/ 04 ноября 2010

Какую информацию о нумерации страниц вы возвращаете со стороны сервера?PagingToolbar просто берет эту информацию из магазина.

Не могли бы вы показать вашему читателю и часть ответа сервера, показывающую данные о нумерации страниц?

...