Javascript 在浏览器中开始下载之前显示加载程序gif

Javascript 在浏览器中开始下载之前显示加载程序gif,javascript,angular,svg,browser,download,Javascript,Angular,Svg,Browser,Download,我在angular 4中使用saveSvgAsPng,并希望在image.png准备好下载之前显示加载程序gif,但类似的内容无法正常工作,并且两个代码行都是紧随其后执行的: svgToImageConverter() { this.showLoader = true; saveSvgAsPng(document.getElementById('main'), 'diagram.png'); this.showLoader = false; } 我想在完成它的作用域之前

我在angular 4中使用saveSvgAsPng,并希望在image.png准备好下载之前显示加载程序gif,但类似的内容无法正常工作,并且两个代码行都是紧随其后执行的:

svgToImageConverter() {
    this.showLoader = true;
    saveSvgAsPng(document.getElementById('main'), 'diagram.png');
    this.showLoader = false;
}
我想在完成它的作用域之前,我需要订阅和更改加载程序布尔值之类的东西,但在这里的saveSvgAsPng中,我不知道


谢谢

用以下内容替换您的线路: saveSvgAsPngdocument.getElementByIdmain,diagram.png,3; 希望这能奏效

我使用了svgapsnguri=el,options,done=>{},并在done函数中更改了this.showLoader

SVGAPSNGURI创建base64和
帮助,我将base64更改为png文件。

什么是saveSvgAsPng?png似乎几乎是即时生成的。需要加载器吗?this.showLoader=true;this.showLoader=false;以这种方式放置这两行不会因Eventloop在browserNo中的工作方式而产生任何差异;png的制作时间与svg的内容成正比,svg的大小越大,制作时间越长。它到底做什么?