2014-02-22 27 views
0

这里是我的模型:存储的数据是空的,虽然我已经从服务器响应

Ext.define('DynTabBar.model.Menu',{ 
     extend: 'Ext.data.Model', 
     config: { 

       fields: [{ 
          name: 'Title', type: 'string' 
        }, { 
          name: 'Level', type: 'int' 
        }, { 
          name: 'Parent', type: 'string' 
        }] 
     } 
}); 

商店:

Ext.define('DynTabBar.store.MenuItems', { 
    extend: 'Ext.data.Store', 
    xtype: 'menustore', 
    config: { 
      storeId: 'menuStore', 
      model: 'DynTabBar.model.Menu', 
      autoLoad: false, 

      proxy: { 
        type: 'ajax', 
        id: 'menuproxy', 
        url: 'http://localhost:50567/api/Menu', 
        reader: { 
         type: 'json' 
        } 
      } 
    } 
}); 

在控制器我有水木清华这样的:

var mainStore = Ext.getStore('menuStore'); 
mainStore.load(); 

我json对服务器的响应是:

[{"Title":"home","Level":1,"Parent":""},{"Title":"home1","Level":2,"Parent":"home"},{"Title":"home2","Level":2,"Parent":"home"},{"Title":"info","Level":1,"Parent":""},{"Title":"info1","Level":2,"Parent":"info"},{"Title":"info2","Level":2,"Parent":"info"},{"Title":"info3","Level":2,"Parent":"info"}] 

但存储数据为空。我失踪或做错了什么?

回答

0

我解决了这个问题,问题是我没有等待存储数据被加载,而是在存储没有加载的时候做一些事情。我修复了我在商店加载的回调中需要做的事情。

mainStore.load(callback); 
相关问题