具有角度2和角度CLI的用户第三方库

时间:2017-02-13 03:14:52

标签: angular

我正在努力寻找有关使第三方库工作所需步骤的任何信息。

具体来说,我说的是.js文件中提供简单功能的第三方库,例如一些数据操作

点击官方angular cli 3rd party installation guide链接后,它会引导您进入angular cli github页面的主页,这对您没有帮助。

例如,以FileSaver为例,这就是我如何使用黑客方式

  1. npm install filesaver.js

  2. 将文件夹名称更改为filesaver而不是filesave.js,因为IDE确实认为它是文件

  3. 在node_modules/@types/filesaver/index.d.ts下创建一个新文件并注释掉所有内容并放入

    声明模块' filesaver' {     var saveAs:any;     export = saveAs; }

  4. 由于这个框架工作已经过时,我不得不以这种方式破解它

    1. 从' filesaver'
    2. 导入*作为fireSaver

      这种方法存在问题。我不应该修改节点模块内部的内容,因为如果我在新项目上运行npm install,内容将会消失。我应该能够在src文件夹中创建我的d.ts文件,并以某种方式使用它。

      此外,我不认为d.ts是强制性的,以使应用程序工作。但是,如果不修改此d.ts文件,我无法使应用程序正常工作。不可思议?

      这一切看起来都很混乱,我无法找到有关如何获取简单js文件的任何信息。

      甚至Angular Cli 3rd party offical已过时,并谈论系统js。

1 个答案:

答案 0 :(得分:2)

对于你的lib,改为使用以下包:

npm install file-saver --save
npm install @types/file-saver --save-dev
组件中的

import * as FileSaver from 'file-saver';

我有另一种方法可以将filesaver.js等第三方与Angular CLI集成:

npm install filesaver.js --save

"scripts"文件中的angular-cli.json部分添加lib:

"scripts": [
  "../node_modules/filesaver.js/FileSaver.js"
],
组件中的

declare const FileSaver: any;

用法:

FileSaver.saveAs()

首先搜索您的包裹和类型:https://www.npmjs.com/