Angular2 – 在SystemJS中导入第三方javascript

前端之家收集整理的这篇文章主要介绍了Angular2 – 在SystemJS中导入第三方javascript前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
由于某种原因,fileSaver未被映射. angular2-jwt工作正常.

我做了npm install file-saver -save来获取文件保护程序,然后引用它如下(我有一个gulp任务将js文件移动到libs目录,我看到那里的文件)

在index.htmlI中已将脚本包含在src和system.config中

  1. <script src="libs/file-saver/FileSaver.js"></script>
  2.  
  3. <!-- 2. Configure SystemJS -->
  4. <script>
  5. System.config({
  6. packages: {
  7. app: {
  8. format: 'register',defaultExtension: 'js'
  9. }
  10. },map: {
  11. "angular2-jwt": "libs/angular2-jwt/angular2-jwt.js","fileSaver":"libs/file-saver/FileSaver.js"
  12. }
  13. });
  14. System.import('app/bootstrap')
  15. .then(null,console.error.bind(console));
  16. </script>

component.ts

这里没有找到fileSaver

  1. import {SaveAs} from 'fileSaver';

我得到的错误就是这个

  1. error TS2307: Cannot find module 'fileSaver'.

知道这里有什么问题吗?

就我而言,我让它像这样工作:

的package.json:

  1. "dependencies": {
  2. // ... all angular dependencies
  3. "file-saver": "1.3.2"
  4. },

index.html的:

  1. <!-- all angular dependencies and other 3rd party -->
  2. <script src="node_modules/file-saver/FileSaver.js"></script>

typings.json:

  1. // other typings needed
  2. "filesaver": "github:DefinitelyTyped/DefinitelyTyped/FileSaver/FileSaver.d.ts#d21f1bd1fd079bbc18bc88ed71d2be7f5707e33a"

用法

  1. var blob = new Blob([this.response],{type: 'application/zip'});
  2. saveAs(blob,'project.zip');

您需要在运行之前执行npm安装.

就是这样,希望它有所帮助.

This won’t let you import {SaveAs} from 'fileSaver'; nor have full code completion,but at least it works

猜你在找的Angularjs相关文章