[在ObjectPageLayout
中,我想显示嵌入了sap.f.Avatar
(圆形)的图片。图片保存为rawstring
在SAP后端,并通过oData(媒体)进行流式处理。当我通过setSrc
方法为图片设置URI时,它对Avatar无效吗?那么如何将后端流图像绑定到头像控件?
Works:
Image.setSrc(**/sap/opu/odata/sap/Z_SERVICE_SRV/ImageSet('1234')/$value).
无效:
Avatar.setSrc(**/sap/opu/odata/sap/Z_SERVICE_SRV/ImageSet('1234')/$value).
相同的问题已经是discussed here,但没有解决方案。
头像示例:
<< img src =“ https://image.soinside.com/eyJ1cmwiOiAiaHR0cHM6Ly9pLnN0YWNrLmltZ3VyLmNvbS9FZ0ozRy5wbmcifQ==” alt =“在此处输入图像描述”>
此错误的原因是,如果您使用Avatar控件,它将使用css属性background-image,该属性会由于此属性开头和内部字符串中的单引号而失败。
background-image(**'**.... ImageSet(**'** 1234')...');
ЛидияКопылова的这个答案对我有用:
此错误的原因是,如果您使用Avatar控件,使用的css属性background-image由于单行失败该属性的开头和其中的字符串中的引号。
background-image(' .... ImageSet(' 1234')...');
我必须将单引号更改为%27
,Avatar控件开始起作用。因此,您更改的代码为:
Avatar.setSrc(**/sap/opu/odata/sap/Z_SERVICE_SRV/ImageSet(%271234%27)/$value).
同样值得注意的是,我目前正在使用SAPui5版本1.52.34,但是在使用1.60.1时,Avatar控件可以在不将单引号更改为%27
的情况下工作。因此,如果您能够升级ui5版本,那么这也可能是一个可行的选择。