Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 初始化存储';Extjs中的s数据_Javascript_Extjs_Extjs4_Extjs Mvc_Extjs Stores - Fatal编程技术网

Javascript 初始化存储';Extjs中的s数据

Javascript 初始化存储';Extjs中的s数据,javascript,extjs,extjs4,extjs-mvc,extjs-stores,Javascript,Extjs,Extjs4,Extjs Mvc,Extjs Stores,我有store,我想从数据库中初始化它,但是我找不到Ext.data.store的标准init方法。我找到了几个使用StoreManager组件的示例,但我认为这不是我想要的。我的应用程序有一个MVC结构,我想保留它,我只想使用我定义的方法初始化我商店的数据字段。有人能解释一下怎么做吗?我要么理解错了,要么你的问题是直截了当的。您可以使用这样的模型配置存储。这就是全部。您可以选择适合您需要的提供商(读写器) // Set up a model to use in our Store Ext.

我有store,我想从数据库中初始化它,但是我找不到
Ext.data.store
的标准init方法。我找到了几个使用
StoreManager
组件的示例,但我认为这不是我想要的。我的应用程序有一个MVC结构,我想保留它,我只想使用我定义的方法初始化我商店的数据字段。有人能解释一下怎么做吗?

我要么理解错了,要么你的问题是直截了当的。您可以使用这样的模型配置存储。这就是全部。您可以选择适合您需要的提供商(读写器)

 // Set up a model to use in our Store
 Ext.define('User', {
     extend: 'Ext.data.Model',
     fields: [
         {name: 'firstName', type: 'string'},
         {name: 'lastName',  type: 'string'},
         {name: 'age',       type: 'int'},
         {name: 'eyeColor',  type: 'string'}
     ]
 });

 Ext.define('YourMVCNameSpace.data.UserStore', {
    extend: 'Ext.data.Store',

    constructor: function (config) {
         config = Ext.Object.merge({}, config);
         var me = this;
         // do what you need with the given config object (even deletes) before passing it to the parent contructor
         me.callParent([config]);
         // use me forth on cause the config object is now fully applied
     },
     model: 'User',
     proxy: {
         type: 'ajax',
         url: '/users.json',
         reader: {
             type: 'json',
             root: 'users'
         }
     },
     autoLoad: true
 });
请注意,读者会期望得到如下Json结果:

{"total": 55, "users":["...modeldata.."]}
指的是像

http://localhost/YourAppDomain//users.json
将存储作为“用户”放置在控制器存储阵列中,并通过调用
getUserStore()
在控制器中检索它,或使用Ext.StoreMgr.lookup(“用户”)直接从Ext.StoreMgr检索它


请注意,按照惯例,控制器(MVC)将覆盖您在存储上设置的任何存储ID,并且只使用名称。

我想我几乎可以理解它,但您能否解释一下配置参数的确切含义以及构造函数需要它的原因?@Peter这是用于克隆配置,以便您不修改原始配置对象。商店没有组件,因此有点不同。这是一个很好的实践,但大多数情况下,即使没有任何构造函数,也不会有任何问题。