fileSaverJS 客户端保存文件

FileSaver.js 在没有原生支持 saveAs() 的浏览器上实现了 saveAs() 接口。有一个 FileSaver.js 示例,演示如何保存各种媒体类型。
FileSaver.js 是在客户端保存文件的解决方案,非常适合需要生成文件,或者保存不应该发送到外部服务器的敏感信息的 web App。
你还在寻找 canvas.toBlob() 来保存画布?canvas-toBlob.js 可以跨浏览器实现这个功能。

  • 支持特征检测:
try {
    var isFileSaverSupported = !!new Blob;
} catch (e) {}
  • 语法
FileSaver saveAs(Blob/File data, optional DOMString filename, optional Boolean disableAutoBOM)

如果不希望 FileSaver.js 自动提供 Unicode 文本编码提示(参见:字节顺序标记),请将 disableAutoBOM 参数设置为 true。

  • 安装
npm install file-saver --save
  • 示例
import { saveAs } from 'file-saver';

FileSaver saveAs(Blob/File/Url, optional DOMString filename, optional Object { autoBom })


var FileSaver = require('file-saver');
//保存文本
var blob = new Blob(["Hello, world!"], {type: "text/plain;charset=utf-8"});
FileSaver.saveAs(blob, "hello world.txt");
//保存画布(canvas)
var canvas = document.getElementById("my-canvas"), ctx = canvas.getContext("2d");
// draw to canvas...
canvas.toBlob(function(blob) {
    saveAs(blob, "pretty image.png");
});
//保存网址
FileSaver.saveAs("https://httpbin.org/image", "image.jpg");
//保存文件
var file = new File(["Hello, world!"], "hello world.txt", {type: "text/plain;charset=utf-8"});
saveAs(file);

你可能感兴趣的:(fileSaverJS 客户端保存文件)