2013-04-30 21 views
8

Jaka jest różnica między store.load() a model.load()? Jedna używa callback, druga używa success/failure, z nieco odmiennymi sygnaturami funkcji.ExtJs Store.Load() kontra Model.Load()

Czy jest jakaś główna różnica, aby użyć store.load(), LUB nie używać go i po prostu bezpośrednio zadzwonić pod numer model.load()? Różnica podczas ładowania modeli zagnieżdżonych z relacjami?

Odpowiedz

4

Jeśli spojrzeć na „Wykorzystanie w sklepach” części Ext.data.Model dokumentacji znajdziesz to dwa zdania:

sklepie jest tylko zbiorem przypadków Model - zazwyczaj ładowane z serwera gdzieś. Sklep może również utrzymywać zestaw dodanych, zaktualizowanych i usuniętych wystąpień modeli, które mają być synchronizowane z serwerem za pośrednictwem serwera proxy.

i

Jest to bardzo często chcą, aby załadować zestawu przypadkach modele mają być wyświetlane i manipulowane w UI

Więc oznacza to, że sklep jest zwykle używany jako kolekcja (lub nazwałbym to repozytorium) wieloma instancjami modelu, które synchronizują dane z określonym backhandiem i utrzymuje listę instancji modelu, które mogą być filtrowane, pytane itp.

Z drugiej strony metoda Ext.data.Model.load ładuje tylko jedną instancję danych według określonego identyfikatora modelu.

Na tej podstawie powiedziałbym, że różnica między Ext.data.Model.load i Ext.data.Store.load jest w ilości danych, które chcesz załadować (jedna lub wiele instancji modelu).