2017-03-22 10 views
0

非常に単純なノードモジュール[npm install twinconsole]を作成し、npmに公開しました。角型2のアウトタイプ定義付きノードモジュールの使用

ブラウザにも を使用できるように、ブラウザ(umdモジュール)も含まれています。以下は

ノードモジュール関連のコード

module.exports.print = msg => { 
console.log(msg); 
} 

は今、私は私がCDNファイルの下に含まれている

  1. ことを行うには、私の角度2 typescriptですアプリケーションからこのノードモジュールを使用したいですindex.html。私はそうする必要があるということです何

    <スクリプトSRC = "https://npmcdn.com/[email protected]/dist/index.umd.min.js">

ノードモジュールにエクスポートしたプリント()関数は、

import { Component } from '@angular/core'; 

declare var twinconsole: any; // ADDEED THIS LINE , IS THIS CORRECT ? 


@Component({ 
    selector: 'app-root', 
    templateUrl: './app.component.html', 
    styleUrls: ['./app.component.css'] 
}) 
export class AppComponent { 

    title = 'app works!'; 
} 
+0

はい、あなたの宣言文はうまく動作するはずルートコンポーネントの下で使用することができます。私は暗号化のためにCryptoJSの同様の宣言をしました。 APIがより広範である場合は、宣言された変数のインタフェースを作成すると便利です。これにより、VSCodeのようなエディタは、オートコンプリートを介してインターフェイスを公開するため、優れた開発環境を提供できます。 – wickdninja

答えて

1
import { Component } from '@angular/core'; 

//define interface to get "intellisense" aka autocomplete and type errors 
interface TwinConsole{ 
    print(msg:string); 
} 

declare var twinconsole: TwinConsole; 


@Component({ 
    selector: 'app-root', 
    templateUrl: './app.component.html', 
    styleUrls: ['./app.component.css'] 
}) 
export class AppComponent { 

    title = 'app works!'; 
} 
関連する問題