使用代理时,存储数据未加载,但静态工作正常

时间:2014-04-24 13:50:10

标签: extjs

使用代理时,存储数据未加载,但静态工作正常。  意思是当我把硬编码数据放入我的商店时,它运行正常。 我的代码就像打击......

模型

Ext.define('new_app.model.BlogModel', {
  extend : 'Ext.data.Model',
  config : {
    fields: [{
        name: "firstName",
        type: "string"
    },{
        name:"lastName",
        type:"string"
    }]
  }
});

存储

Ext.define('new_app.store.blogs',{
  extend:'Ext.data.Store',
  config:{
    model: "new_app.model.BlogModel",
      proxy: {
          type: 'ajax',
          url: "data/testStore.js", 
        reader: {
          type: 'json',
          rootProperty: 'data'
        }
      },
      autoLoad: true
    }
 });

我的观点

 Ext.define('new_app.view.Blog',{
  extend:'Ext.navigation.View',
   xtype:'blog',

requires:[
    "Ext.dataview.List"

],
config: {
    title:'Blog',
    iconCls:'star',

    items:[{
        xtype:'list',
        itemTpl: '<div class="contact">{firstName} <strong>{lastName}</strong></div>',
        title:'Recent Posts',
        store:'blogs'

     }]

},


initialize: function(){
    this.callParent();
    // var storeData = Ext.widget('myblogs');
    // console.log(storeData);
    // this.setData(storeData);
}

});

请帮帮我。

1 个答案:

答案 0 :(得分:1)

除了应该优先在模型上配置代理/阅读器,而不是在商店中配置时,这一切看起来都很好。现在,如何调试这个东西:

  1. 验证是否有请求发送到服务器(商店是autoLoad所以它应该)
  2. 验证有效的json是否回来
  3. 查看rootProperty是否与json中的内容匹配
  4. 顺便说一句,这看起来像Sencha Touch,对吗?