2016-08-12 9 views

答えて

1

jsreport.renderAsyncは、約束のArrayBufferで返します。それをblobに変換してから、saveAsを使ってそれをユーザのコンピュータにダウンロードすることができます。

<script async="" src="https://cdn.rawgit.com/eligrey/FileSaver.js/e9d941381475b5df8b7d7691013401e171014e89/FileSaver.min.js"></script> 

<script> 
    jsreport.renderAsync({ 
     template: { 
      content: '<table><tr><td>foo</td></tr></table>', 
      engine: 'none', 
      recipe: 'html-to-xlsx' 
     } 
    }).then(function (res) { 
     var dataView = new DataView(res); 
     var blob = new Blob([dataView], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' }); 
     saveAs(blob, 'a.xlsx') 
    }) 
</script> 

https://playground.jsreport.net/studio/workspace/HJ0z0yaY/8

関連する問題