На самом деле это две разные вещи. A Ext.data.JsonReader
читает заданный объект JSON и возвращает записи данных (Ext.data.Record
объекты), которые впоследствии сохраняются соответствующим хранилищем данных.
Ext.data.Store
является базовым классом для всех хранилищ Ext и использует вспомогательные объекты для извлечения данных (Ext.data.DataProxy
), для записи данных (Ext.data.DataWriter
). ) и для чтения данных (Ext.data.DataReader
). Эти базовые классы бывают разных вкусов, такие как:
Все это создает очень расширяемый компонент, который позволяет разработчику точно настраивать то, что ему нужно настроить. Для удобства разработчиков (особенно новых) Ext поставляется с несколькими предварительно настроенными хранилищами данных:
Так что на самом деле Ext.data.JsonStore
- это просто удобный класс, чтобы упростить разработку.
Следующие два фрагмента создадут одинаковые (или сопоставимые) магазины:
var store = new Ext.data.JsonStore({
url: 'get-images.php',
root: 'images',
idProperty: 'name',
fields: ['name', 'url', {name:'size', type: 'float'}, {name:'lastmod', type:'date'}]
});
// or
var store = new Ext.data.Store({
url: 'get-images.php',
reader: new Ext.data.JsonReader({
root: 'images',
idProperty: 'name',
fields: ['name', 'url', {name:'size', type: 'float'}, {name:'lastmod', type:'date'}]
});
});