我有以下型号:
Ext.define('RateManagement.model.Service', {
extend: 'Ext.data.Model',
fields: [
{ name: 'name', type: 'string' }
]
});
而且,我有以下商店:
Ext.define("RateManagement.store.ServiceStore", {
extend: 'Ext.data.Store',
model: 'RateManagement.model.Service',
autoLoad: true,
data: [
{
name: 'Test Service'
}
]
});
然后我创建一个这样的模板:
var tpl2 = new Ext.XTemplate(
'<a href="#">{name}</a>'
).compile();
而且,我最终尝试在我的窗口中使用Store和Template,如下所示:
var win = new Ext.Window({
el:'hello-win',
//layout:'fit',
width:500,
title: 'View All Services',
height:300,
closeAction:'hide',
plain: true,
items: [
{
xtype: 'textfield',
enableKeyEvents: true,
listeners: {
keyup: function(c) {
console.log(c.getValue());
}
}
},
{
xtype: 'panel',
//title: 'test',
preventHeader: true,
height: 100,
bodyPadding: 10,
tpl: tpl2,
store: RateManagement.store.ServiceStore
//data: data
}
],
buttons: [{
text:'Submit',
disabled:true
},{
text: 'Close',
handler: function(){
win.hide();
}
}]
});
但是,“测试服务”链接永远不会出现在我的窗口中,并且控制台中没有错误。
我做错了什么?
感谢。
修改:使用最新代码更新。
items: [
{
xtype: 'textfield',
enableKeyEvents: true,
listeners: {
keyup: function(c) {
console.log(c.getValue());
}
}
},
{
xtype: 'dataview',
itemSelector: 'a.serviceLink',
tpl: tpl2,
store: RateManagement.store.ServiceStore
//data: data
}
],