JSFiddle - React, Tailwind, and code Playground
HTML
<a id="download">Download</a>
JavaScript
// via http://kurukurupapa.hatenablog.com/entry/20121013/1350101221
setFileUrl("download", "sample.csv", "hoge,fuga\nfoo,bar\n");
function setFileUrl(id, fname, content) {
var requestFileSystem = window.requestFileSystem || window.webkitRequestFileSystem;
requestFileSystem(TEMPORARY, 1024 * 1024, function (fileSystem) {
fileSystem.root.getFile(fname, {
create: true,
exclusive: false
}, function (fileEntry) {
fileEntry.createWriter(function (fileWriter) {
var blob = new Blob([content], {
"type": "text/plain"
});
fileWriter.write(blob);
fileWriter.onwriteend = function (e) {
console.log("ファイル書き込み成功");
};
fileWriter.onerror = function (e) {
console.log("ファイル書き込み失敗");
};
});
$("#" + id).attr("href", fileEntry.toURL()).attr("download", fname);
// 仮想ファイルシステムから消したほうがいいかもね?
}, function (error) {
console.log("error.code=" + error.code);
});
});
}