是否可以生成zip文件并在Angular 4中下载?

时间:2018-06-29 10:20:38

标签: angular

我是Angular 4的初学者。我引用了许多链接来生成Zip文件,但是我找不到适当的解决方案。
可以在Angular 4中生成Zip文件吗?
如果可能的话,怎么办?

2 个答案:

答案 0 :(得分:3)

您可以在Angular中使用任何JS库。因此,例如,您可以使用JSzip,然后只需:

import * as JSZip from 'jszip';

现在您将可以访问此库方法。您可以阅读有关在angular中使用纯JS库的更多信息。有很多关于它的信息,甚至清楚地说明了如何进行和正确使用。我认为,如果您进一步深入研究该主题,而不是逐步获得明确的用法说明,将会更好。您将学到更多,如果将来遇到此类问题,您将轻松解决。希望这个建议对您有帮助。

答案 1 :(得分:1)

安装库

$ npm install --save npm install jszip

在文件tsconfig.json中

{"compilerOptions": {"paths": {
  "jszip": ["../node_modules/jszip/dist/jszip.min.js"]
}}}

在文件demo.component.ts

import { saveAs, encodeBase64 } from '@progress/kendo-file-saver';
import * as JSZip from 'jszip';

demo.component.ts上的功能

downloadFileExample() {
  const jszip = new JSZip();
  jszip.file('Hello.txt', 'Hello World\n');

  jszip.generateAsync({ type: 'blob' }).then(function(content) {
    // see FileSaver.js
    saveAs(content, 'example.zip');
  });
}

此示例使用Angular6。