Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Import JSZip in Angular 2 project

I am having troubles while importing the JSZip library in my Angular 2 project. I followed the following steps in order to change the project configuration:

1 - Install JSZip using NPM

npm install jszip --save

2 - Change systemjs.config.js as follows

var map = {
    ...
    'jszip':                      'node_modules/jszip/dist/jszip.min.js'
};

3 - Import the dependency within the component that requires it

import JSZip from 'jszip';

Then, I tried using the main JSZip constructor to attach some files, but I am getting a web error stating that the constructor is not defined. Besides, the Typescript editor I am using is not able to find the definition for it.

Did I miss something?

Thank you.

like image 650
AlexKibo88 Avatar asked Mar 29 '17 14:03

AlexKibo88


2 Answers

For those who want to know how it ended, the problem was in the import. The following is the correct import:

import * as JSZip from 'jszip';

Then, it is used as follows:

let zipFile: JSZip = new JSZip();
like image 62
AlexKibo88 Avatar answered Oct 31 '22 11:10

AlexKibo88


There is a typo and it should be:

import * as JSZip from 'jszip';
let zipFile: JSZip = new JSZip();
like image 43
Yunfei Li Avatar answered Oct 31 '22 10:10

Yunfei Li