2013-10-16 11 views
7

Ilekroć sklep (Ext.data.Store) odczytuje dane z serwera, wysyła parametry stronicowania jak &page=1&start=0&limit=25 w json pełnomocnika lub [page:1, start:0, limit:25] użyciu direct proxy.ExtJS - Jak wyłączyć stronicowanie w sklepie

Chciałbym wyłączyć stronicowanie w konfiguracji sklepu lub proxy.

Znalazłem to obejście, ale jestem pewien, że musi istnieć lepsza metoda.

proxy: { 
    pageParam: undefined, 
    startParam: undefined, 
    limitParam: undefined, 
    ... 
} 

Czy ktoś wie, jak prawidłowo wyłączyć stronicowanie?

+0

Niestety nie wydaje się być sposobem zastosowania tego obejścia przy tworzeniu sklepów w Sencha Architect V2.2.2. –

Odpowiedz

2
store: { 
    pageSize: 0, 
    limit:0, 
.... 
} 

wyłączeniem z żądania

strona: __

start: __

limit: ___

+0

Dla moich sklepów z proxy localstorage, pomyślnie użyłem 'store.load ({limit: 1}). –

3

Inną opcją jest zastąpienie metody proxy getParams. Obsługuje grupowanie, sortowanie, filtry, stronę, parametry początkowe i limitowane. Jest zdefiniowana w Ext.data.proxy.Server

Jeśli chcesz wyłączyć wszystkie ExtJS wykorzystywane parametry, a następnie można prosty zastąpić go z pustym metody:

proxy: { 
    getParams: Ext.emptyFn, 
    ... 
}

Możesz również rozszerzyć klasę proxy i zastąpić tę metodę.

+3

Spowoduje to wyłączenie wszystkich funkcji parametrów. To nie jest przeznaczone. –

+1

Możesz również rozszerzyć klasę proxy i zastąpić tę metodę, a nie tylko za pomocą 'Ext.emptyFn', ale za pomocą spersonalizowanej metody' getParams' –

-1

ustawić następujące w sklepie:

{ 
    defaultPageSize: null 
} 
+0

Nie, to nie działa. Nie ma wpływu na paginację. –

2

ustawić:

pageSize: 0, 

w modelu config.

1

Aby wyłączyć stronicowanie, trzeba ustawić wartości do pustej struny, nieokreślone. Tak:

pageParam: '', 
startParam: '', 
limitParam: '', 

To działa na mnie w Ext JS 6.2

+0

'undefined' również działa. To nie jest dla mnie poprawa. –