我试图让 AngularJS 在用户单击按钮时触发文件下载。
应该下载的文件必须包含在脚本执行期间生成的数据,因此文本文件的内容应该从 AngularJS 中的基本字符串构建。
我该如何实施?
这是一些关于我想象这将如何工作的模型代码:
var fileContent = 'foobar';
$scope.download = function() {
filedownload.run(fileContent, 'filename.txt');
}
为了实现这一点,您必须在 HTML 中创建一个标签:
<a download="content.txt" ng-href="{{ url }}">download</a>
控制器:
var content = 'file content for example';
var blob = new Blob([ content ], { type : 'text/plain' });
$scope.url = (window.URL || window.webkitURL).createObjectURL( blob );
并启用 URL:
app = angular.module(...);
app.config(['$compileProvider',
function ($compileProvider) {
$compileProvider.aHrefSanitizationWhitelist(/^\s*(https?|ftp|mailto|tel|file|blob):/);
}]);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句