我对Sencha很新。只是想弄清楚为什么我正在为我的项目做我的View / Store / Model的方式不起作用><
我正在尝试从我的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.ProductsList
重命名为Productslist
,它有效。当我将它们分成视图,存储和模型时,它就会停止这与我链接这些文件的方式有关。
任何有更多洞察力的人?
答案 0 :(得分: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}'