0

我对 Sencha 很陌生。只是想弄清楚为什么我目前为我的项目执行视图/存储/模型的方式不起作用><

我正在尝试从我的 json 中提取产品列表,但现在它并没有真正起作用。任何建议将被认真考虑!

这是代码(编辑,我第一次粘贴错误的代码,更正它><对不起):

看法:

Ext.define('Sencha.view.ProductsList', {
   extend: 'Ext.DataView',
   xtype: "productslist",

   config: {
    flex:1,
     scrollable: true,

     store: 'Plist',
 itemTpl: '<img src={image} width="90%"><br>{name}'
   }
});

模型

Ext.define('Sencha.model.ProductsList', {
        extend: 'Ext.data.Model',
        config: {
            fields: [
                {
                    name: 'name',
                    type: 'string'
                }, {
                    name: 'image',
                    type: 'string'
                }

            ]

        }
    });

店铺

Ext.create('Ext.data.Store',{
    storeId: 'Plist',
    model:'Sencha.model.ProductsList',
    title: 'My Collection',
    proxy: {
        type: 'ajax',
        url : '/products.json',
        reader: {
            type: 'json',
            root: 'products'
        }
    }
});

谢谢!!

附加信息:我将这三个部分一起放入视图文件中(并重命名Sencha.model.ProductsListProductslist,它起作用了。当我将它们分成视图、存储和模型时,它就停止工作了。这与我链接的方式有关这些文件。

有没有比较有见地的人?

4

1 回答 1

0

一件事:

reader: {
    type: 'json',
    root: 'products'
}

应该:

reader: {
    type: 'json',
    rootProperty: 'products'
}

还,

itemTpl: '<img src={image} width="90%"><br>{name}'

应该有引号{image}

itemTpl: '<img src="{image}" width="90%"><br>{name}'
于 2013-05-18T20:29:26.593 回答