はじめに
JavaScriptでCSVなどを作成し保存させる場合、ブラウザにより実装方法が異なります。
FileSaver.jsライブラリを利用してクロスブラウザ対応しファイル保存できるようにします。
サンプルコード
import { saveAs } from "file-saver";
import axios from "axios";
function csvDownload() {
axios.get('/csv', {
responseType: "blob",
}).then(response => {
const blob = new Blob([response.data], {
type: response.data.type
});
const fileName = 'hoge.csv';
saveAs(blob, fileName);
});
}