angular-file-saver 使用 FileSaver 下载 base64 文件
angular-file-saver download base64 file using FileSaver
我正在尝试使用 angular-file-saver 下载 base64 文件。
我可以在没有 angular-file-saver 的情况下做到这一点,只需这个 html 标记:
<a ng-href="data:{{document.mimeType}};base64,{{document.base64Code}}" target="_blank" download>Download Single Document</a>
我现在还有其他需求可以用 angular-file-saver 来满足,这让我过渡到使用 FileSaver 来实现。现在我想使用文件保护程序实现相同的下载。我的 html 加价是:
<a ng-href="#" ng-click="downloadFile()">Download with File Saver</a>
然后我像这样构建我的 downloadFile 函数:
function downloadFile () {
var data = new blob([$scope.document.base64Code], {type: $scope.document.mimeType+';base64'});
var config = {
data: data,
filename: $scope.documentSaveAs ? $scope.documentSaveAs : $scope.document.FileName
}
fileSaver.saveAs(config);
}
我的问题是,当我尝试打开文件时,文件下载后已损坏。
我假设我通过连接“;base64”对类型对象做错了什么。我已经开始深入研究 angular-file-saver.bundle.js 但非常感谢任何帮助。我做错了什么?
我最终深入研究了 BLOB 并遇到了这个 Whosebug 以使其工作。
Creating a Blob from a base64 string in JavaScript
我正在尝试使用 angular-file-saver 下载 base64 文件。
我可以在没有 angular-file-saver 的情况下做到这一点,只需这个 html 标记:
<a ng-href="data:{{document.mimeType}};base64,{{document.base64Code}}" target="_blank" download>Download Single Document</a>
我现在还有其他需求可以用 angular-file-saver 来满足,这让我过渡到使用 FileSaver 来实现。现在我想使用文件保护程序实现相同的下载。我的 html 加价是:
<a ng-href="#" ng-click="downloadFile()">Download with File Saver</a>
然后我像这样构建我的 downloadFile 函数:
function downloadFile () {
var data = new blob([$scope.document.base64Code], {type: $scope.document.mimeType+';base64'});
var config = {
data: data,
filename: $scope.documentSaveAs ? $scope.documentSaveAs : $scope.document.FileName
}
fileSaver.saveAs(config);
}
我的问题是,当我尝试打开文件时,文件下载后已损坏。
我假设我通过连接“;base64”对类型对象做错了什么。我已经开始深入研究 angular-file-saver.bundle.js 但非常感谢任何帮助。我做错了什么?
我最终深入研究了 BLOB 并遇到了这个 Whosebug 以使其工作。 Creating a Blob from a base64 string in JavaScript