在 Ext.data 上下文中,JsonStore 和 JsonReader 之间的基本区别是什么?

发布于 2024-08-19 01:27:17 字数 123 浏览 13 评论 0原文

在 Ext.data 上下文中,JsonStore 和 JsonReader 之间的基本区别是什么?

我的意思是,当我应该使用 JsonStore 和当我应该使用 JsonReader 时,两者都提供相同的解决方案。

What's basic difference between JsonStore and JsonReader in context to Ext.data?

I mean when I should go for JsonStore and when I should use JsonReader as for me both are providing same solution.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

风吹雨成花 2024-08-26 01:27:17

实际上它们是两个不同的东西。 Ext.data.JsonReader< /a> 读取给定的 JSON 对象并返回数据记录 (< code>Ext.data.Record 对象),稍后由相应的数据存储存储。

Ext.data.Store< /a> 是所有 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'}]
    });
});

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.

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:

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:

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'}]
    });
});
失去的东西太少 2024-08-26 01:27:17

JsonReader 将 JSON 从数据源读取到 Ext Store 中。 JsonData 不是一个专门定义的 Ext 对象,尽管您可能已经将其视为变量名?您在什么情况下使用它?

A JsonReader reads JSON from a data source into an Ext Store. JsonData is not a specifically-defined Ext object, although maybe you've seen it as a variable name? In what context are you using it?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文