由于某种原因,fileSaver未被映射. angular2-jwt工作正常.
我做了npm install file-saver -save来获取文件保护程序,然后引用它如下(我有一个gulp任务将js文件移动到libs目录,我看到那里的文件)
在index.htmlI中已将脚本包含在src和system.config中
<script src="libs/file-saver/FileSaver.js"></script> <!-- 2. Configure SystemJS --> <script> System.config({ packages: { app: { format: 'register',defaultExtension: 'js' } },map: { "angular2-jwt": "libs/angular2-jwt/angular2-jwt.js","fileSaver":"libs/file-saver/FileSaver.js" } }); System.import('app/bootstrap') .then(null,console.error.bind(console)); </script>
component.ts
这里没有找到fileSaver
import {SaveAs} from 'fileSaver';
我得到的错误就是这个
error TS2307: Cannot find module 'fileSaver'.
知道这里有什么问题吗?
就我而言,我让它像这样工作:
的package.json:
"dependencies": { // ... all angular dependencies "file-saver": "1.3.2" },
index.html的:
<!-- all angular dependencies and other 3rd party --> <script src="node_modules/file-saver/FileSaver.js"></script>
typings.json:
// other typings needed "filesaver": "github:DefinitelyTyped/DefinitelyTyped/FileSaver/FileSaver.d.ts#d21f1bd1fd079bbc18bc88ed71d2be7f5707e33a"
用法:
var blob = new Blob([this.response],{type: 'application/zip'}); saveAs(blob,'project.zip');
您需要在运行之前执行npm安装.
就是这样,希望它有所帮助.
This won’t let you
import {SaveAs} from 'fileSaver';
nor have full code completion,but at least it works