ASP.net MVC Web API からデータをフェッチする小さな Angular 2 アプリがあります。認証の使用。Angular 2 で Ahead Of Time コンパイラを使用しようとしています。次のコマンドを実行しています
node_modules \ .bin\ngc -p src
しかし、私は次のエラーが発生しています
(ノード:13640) UnhandledPromiseRejectionWarning: 未処理のプロミス拒否 (拒否 ID: 2): TypeError: 'instanceof' の右側はオブジェクトではありません (ノード:13640) DeprecationWarning: 未処理のプロミス拒否は非推奨です。今後、処理されないプロミスの拒否は、ゼロ以外の終了コードで Node.js プロセスを終了します。
誰かがそれを解決する方法を教えてもらえますか
これは私のディレクトリ構造です
このリンクで指示されたように、tsconfig.json をルートから src フォルダーに移動しました
それが私が約束を使用している方法です
私は次のような約束を返すサービスを作成しました:
public get(servicename: string) {
this.colorlog.log('get ' + servicename + " ",enmMessageType.Info);
return this.http.get(this.ngWEBAPISettings.apiServiceBaseUri + "api/" + servicename + "/", this.ngWEBAPISettings.getConfig()).toPromise();
}
そして、このようなコンポーネントでそれを消費します
get() {
var promise = this.setupServicePromise.get(this.SERVICE_NAME);
promise.then((response: any) => {
this.colorlog.log('in then promise ProductComponent get' + response, enmMessageType.Data);
this.vm.Products = response.json();
}).catch((error: any) => {
this.colorlog.log("Error Occurred in product", enmMessageType.Error);
});
}
これは私の ts.config ファイルです。
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"lib": ["es2015", "dom"],
"noImplicitAny": true,
"suppressImplicitAnyIndexErrors": true
}
}