在Angular 2项目中导入JSZip

Ale*_*sio 12 typescript jszip angular

我在Angular 2项目中导入JSZip库时遇到了麻烦.我按照以下步骤更改项目配置:

1 - 使用NPM安装JSZip

npm install jszip --save
Run Code Online (Sandbox Code Playgroud)

2 - 按如下方式更改systemjs.config.js

var map = {
    ...
    'jszip':                      'node_modules/jszip/dist/jszip.min.js'
};
Run Code Online (Sandbox Code Playgroud)

3 - 在需要它的组件中导入依赖项

import JSZip from 'jszip';
Run Code Online (Sandbox Code Playgroud)

然后,我尝试使用主JSZip构造函数来附加一些文件,但我收到一个Web错误,指出构造函数未定义.此外,我使用的Typescript编辑器无法找到它的定义.

我错过了什么?

谢谢.

Ale*_*sio 32

对于那些想知道它是如何结束的人来说,问题在于导入.以下是正确的导入:

import * as JSZip from 'jszip';
Run Code Online (Sandbox Code Playgroud)

然后,使用如下:

let zipFile: JSZip = new JSZip();
Run Code Online (Sandbox Code Playgroud)

谢谢.

  • 如果您正在使用JSZip 3.x,您还可以使用以下代码获取Typescript类型定义:https://www.npmjs.com/package/@types/jszip (4认同)