如何在angular2服务中使用第三方脚本?

时间:2017-11-18 01:19:23

标签: angular typescript

我正在尝试使用angular2, angular cli 。我用ng新的my-app创建了一个带有角度cli的应用程序。现在我想创建一个我需要使用第三方脚本的服务。我看到该脚本已经在node_modules中。

如何在我的服务中包含/导入/注入/使用(无论如何)该脚本?

我看到一些关于添加到全局脚本的示例。但是,如果我只需要服务而不是其他地方,我为什么要把它放在全球范围内呢?

my.service.ts

import { Injectable } from '@angular/core';
(HOW CAN I INCLUDE IN THIS SERVICE NODE_MODULES/SOME_OTHER_SCRIPT)??

@Injectable()
export class MyService {

    constructor() { }

}

2 个答案:

答案 0 :(得分:1)

尝试使用以下行进行导入,将circular-json替换为您的第三方名称。同时安装第三方脚本的输入,以便获得所有其他导入的建议。 This link has all high quality types

import * as CircularJSON from 'circular-json';

答案 1 :(得分:1)

您可以在服务中使用第三方脚本,因此首先应该具有该脚本的类型定义。类型定义可以在https://microsoft.github.io/TypeSearch/上搜索类似highcharts(如果可用),您可以在项目中安装npm install --save @types/highcharts。否则需要写类型定义文件,即。

步骤1.在assests / javascript文件夹中创建demo.js文件。

export function test1(){
    console.log('Calling test 1 function');
}

步骤2.在assests / javascript文件夹中创建demo.d.ts文件。

export declare function test1();

步骤3.在组件中使用它

import { test1 } from '../assets/javascript/demo'; 
@Injectable()
export class AppService {
  constructor() {
    console.log(test1());
  }
}