JS FileSaver非交互式

时间:2017-12-01 17:13:18

标签: javascript node.js filesaver.js

我有一个要使用循环保存的文件数组,我生成每个文件的名称。我想直接保存文件(以非交互方式),而不要求我确认。我能怎么做 ? 这是我保存文件的代码

var url = img.src.replace(/^data:image\/[^;]/, 'data:application/octet-stream');

var xhr = new XMLHttpRequest();

xhr.responseType = 'blob'; //Set the response type to blob so xhr.response returns a blob
xhr.open('GET', url , true);

xhr.onreadystatechange = function () {
    if (xhr.readyState == xhr.DONE) {
        var filesaver = require('file-saver');
        filesaver.saveAs(xhr.response, nameFile); // nameFile the name of file to be saved
    }
};
xhr.send(); //Request is sent

1 个答案:

答案 0 :(得分:0)

最后,我找到了一个解决方案,而不是保存文件,我通过创建一个新文件来编写它。

for (var i = 0; i < tabForm.length; i++) {

    var imgData = $('#affichageqr')[0].childNodes[1].childNodes[0].src;

    var data = imgData.replace(/^data:image\/\w+;base64,/, '');

    fs.writeFile(qrcode.getNomQRCode()+'.jpeg', data, {encoding: 'base64'}, function(err){
      if (err) {
        console.log('err', err);
      }
     console.log('success');
    });
  }