私はAngular2とTypescriptの新機能です。 私は優雅にjsの外部ライブラリを使用する方法を見つけたい:TypeJavaの外部Javascriptライブラリの宣言のためのSystemJSコンフィグレーション
declare var somelibrary: any;
somelibrary.doAnithing();
しかし、私はいくつかのtypizationを持ちたいので、私は* .d.tsの使用hereを読む:私は使用することができ、私が知っている
export declare class Chart {
constructor (ctx: any);
Doughnut(data: any, options: any): Function;
}
は(私もしてみてください:)
export declare module 'chart' {
export class Chart {
constructor (ctx: any);
Doughnut(data: any, options: any): Function;
}
}
:
は、だから私は、モジュールchart.d.ts
を作成します
と、さまざまな方法しようと、それを参照:
// version 1
import chartFactory = require('../chart');
// version2
import { Chart } from '../chart';
し、それを使用します。
// version 1 usage
new chartFactory.Chart(ctx).Doughnut(this.chart1, {responsive : true});
または第二のインポートのために:
// version 2 usage
new Chart(ctx).Doughnut(this.chart1, {responsive : true});
コンパイルがをsuccedsが、上ランタイムSystemJS js実装をロードしようとしています'path/to/chart.js'
を検索しています(実際はchart.jsはありません。元のライブラリはスクリプトタグでインポートされています)。 、について説明して
System.config({
packages: {
app: {
format: 'register',
defaultExtension: 'js'
}
}
});
tsconfig.json
{
"compilerOptions": {
"target": "es5",
"module": "system",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false
},
"exclude": [
"node_modules",
"typings/main",
"typings/main.d.ts"
]
}
ヒント:
SystemJSの構成は、角度のチュートリアルと同じですか?
私は失敗したloockupの原因は"module": "system"
だと思いますが、問題は:SystemJSの解像度と競合することなく内部dtsを行う方法ですか?
あなたの返信ありがとう、私はそれを試みました、あなたが投稿したリンクは、私が投稿した同じです。問題は、SystemJSが存在しないchart.jsを検索し、アプリケーションが破損したことです。 – Guaido79
chart.jsライブラリを指すことができれば役に立ちます。 :) – toskv
@ Guaido79それはこれ? http://www.chartjs.org/ – toskv