在 Ext.data 的上下文中,JsonStore 和 JsonReader 之间的基本区别是什么? [英] what's basic difference between JsonStore and JsonReader in context to Ext.data?
问题描述
在上下文中,JsonStore 和 JsonReader 与 Ext.data 的基本区别是什么?
What's basic difference between JsonStore and JsonReader in context to Ext.data?
我的意思是什么时候应该使用 JsonStore,什么时候应该使用 JsonReader,因为对我来说两者都提供了相同的解决方案.
I mean when I should go for JsonStore and when I should use JsonReader as for me both are providing same solution.
推荐答案
实际上它们是两个独立的东西.Ext.data.JsonReader
读取给定的 JSON 对象并返回数据记录(Ext.data.Record
对象),稍后由相应的数据存储存储.
Actually they are two separate things. A Ext.data.JsonReader
reads a given JSON object and returns data records (Ext.data.Record
objects) that are later stored by the respective data store.
Ext.data.Store
是所有 Ext 存储的基类,并使用辅助对象来检索数据 (Ext.data.DataProxy
),用于写入数据 (Ext.data.DataWriter
) 和读取数据 (Ext.data.DataReader
).这些基类有不同的风格,例如:
The Ext.data.Store
is the base class for all Ext storages and uses helper objects for retrieving data (Ext.data.DataProxy
), for writing data (Ext.data.DataWriter
) and for reading data (Ext.data.DataReader
). These base classes come in different flavors such as:
Ext.data.DataProxy
:这一切构成了一个非常可扩展的组件,允许开发人员准确配置他需要调整的内容.为了让开发者(尤其是新开发者)更容易使用 Ext 附带了一些预配置的数据存储:
This all builds up to a very extendable component that allows the developer to configure exactly what he needs to tweak. To make it easier for developers (especially new ones) Ext comes with some pre-configured data stores:
Ext.data.ArrayStore
使读取简单的 Javascript 数组更容易Ext.data.DirectStore
,只是一个预先配置了Ext.data.DirectProxy
和一个Ext.data.JsonReader
Ext.data.JsonStore
,只是一个预先配置了Ext.data.JsonReader
Ext.data.XmlStore
,只是一个预先配置了Ext.data.XmlReader
所以实际上是一个
Ext.data.JsonStore
只是一个方便的类,让开发者更容易.So actually a
Ext.data.JsonStore
is just a convenience class to make it easier for the developer.以下两个片段将创建相同(或类似)的商店:
The following two snippets will create the same (or comparable) stores:
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'}] }); });
这篇关于在 Ext.data 的上下文中,JsonStore 和 JsonReader 之间的基本区别是什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!