我需要更换控制器中的图像。我怎么能这样做?
控制器:
onNewsItemTap: function(dataview, index, target, record, e, eOpts) {
var form = Ext.create("MyApp.view.mYV",{
title:record.data.Gender,
record:record
});
// I NEED TO REPLACE THE DEFAULT.JPG IMAGE WITH SOME OTHER IMAGE. HOW CAN I ACCESS THE IMAGE VIEW FROM THE CONTROLLER ?
// MY WORKING
var imageView = Ext.ComponentQuery.query('#myvID > #myimage')[0];
imageView.setValue(record.data.imageurl);
this.getMainView().push(form);
},
查看:
Ext.define('MyApp.view.mYV', {
extend: 'Ext.form.Panel',
alias: 'widget.myv',
config: {
fullscreen: true,
id: 'myvID',
scrollable: 'vertical',
items: [
{
xtype: 'image',
height: 201,
id: 'myimage',
src: 'http://www.mysite/default.jpg'
}
]
}
});
注意:更新
我有一个导航视图,从导航视图我导航到mYV
视图,以及我需要访问图像的位置。
答案 0 :(得分:1)
你有图像的id ..你还需要什么
Ext.getCmp('myimage').setSrc(record.data.imageurl)
但这不是好习惯,你可以用很多方式做同样的事情
我建议您查看The dangers of Ext.getCmp() Screencast
<强>更新强>
在视图中..
删除id并在图像组件
中为其指定itemID{
xtype: 'image',
height: 201,
itemId: 'myimage',
src: 'http://www.mysite/default.jpg'
}
在控制器中
var form = Ext.create("MyApp.view.mYV",{
title:record.data.Gender,
record:record
});
form.getComponent('myimage').setSrc(record.data.imageurl);