我正在尝试从API调用中获取一个svg图像,该调用的responseType设置为blob,并使用获得的svg填充div的背景图像。这是我的代码:
this.subscriptionArray.push(
this.analysisService.getHeatmapBackgroundSVG().subscribe((svg: any) => {
const urlCreator = window.URL;
const imageUrl = urlCreator.createObjectURL(svg);
const chartObject = document.getElementById('chartMainDiv');
if (chartObject) {
chartObject.style.background = 'url(' + imageUrl + ')';
}
这是svg:any的外观:
Blob
size: 3562
type: "application/octet-stream"
__proto__: Blob
这是imageUrl的样子:
blob:http://localhost:4200/6f89fd79-2061-4d47-999d-c85a12c41087
问题在于,当我将style.background设置为chartObject时,什么也没有发生。 css属性出现在控制台中,如果我单击url()标记内的url,它将下载正确的svg,只是它不会显示在页面本身中。我在做什么错了?