2

我是 Sencha Touch 的新手,我正在尝试在视图中显示图像。图像的来源来自我模型的一个字段,采用 base64 字符串格式。我需要将此字段分配给图像 src。当我尝试在图像中设置静态 base 64 内容时,它工作正常,但是当我尝试通过分配字段动态分配时,视图为空白。

请看下面的代码

基于图像 base64 的内容将出现在“附件”字段中

我的查看代码

 Ext.define('TechHelp.view.ViewAttachment',
            {
                xtype : 'viewattachment',
                  extend : "Ext.form.Panel",
                requires :"Ext.form.FieldSet" ,

      config : {
                    //styleHtmlContent : true,
                    scrollable : 'vertical',
                    title : 'Attachments',
    items : [{
        xtype : "image",
       name : 'attachment',
       src: 'data:image/jpeg;base64,'+'Attachment',
           height:'100px',
       width: '100px'
}, ]
 },

 });

我的模型代码

Ext.define('TechHelp.model.Attachment', { 扩展:'Ext.data.Model',

config: {
    // define the fields. the default type is string

    fields:// ['customerId','FirstName'],
          [{name:'AttachmentId'},
           {name:'TicketId'},
           {name:'Attachment'},
           {name:'FileName'},
           ],

},

});

请帮忙。

4

1 回答 1

2

您可能应该将数据设置为视图,然后使用 tpl 打印值:

控制器:

var itemView = Ext.create('TechHelp.view.ViewAttachment');
itemView.setRecord(record);

看法:

config : {
    scrollable : 'vertical',
    title : 'Attachments',
    tpl: '<img src="data:image/jpeg;base64,{Attachment}" />'
    ....
},

updateRecord: function(record) {
    if (record) this.setData(record.data);
}

希望能帮助到你-

于 2013-07-26T13:46:24.283 回答