Angular2 – 在SystemJS中导入第三方javascript

前端之家收集整理的这篇文章主要介绍了Angular2 – 在SystemJS中导入第三方javascript前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
由于某种原因,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

猜你在找的Angularjs相关文章