エラー出力内容(抜粋)
ERROR Error: Uncaught (in promise): Error: StaticInjectorError[e]
「uncaught (in promise) error」の原因と対応方法
app.module.ts で、必要なモジュールがimportされていない時に発生します。
私の場合は、Httpを使おうとしたら以下のようになりました。
エラーの全文です。
ERROR Error: Uncaught (in promise): Error: StaticInjectorError(AppModule)[Http]: StaticInjectorError(Platform: core)[Http]: NullInjectorError: No provider for Http! Error: StaticInjectorError(AppModule)[Http]: StaticInjectorError(Platform: core)[Http]: NullInjectorError: No provider for Http! at NullInjector.push../node_modules/@angular/core/fesm5/core.js.NullInjector.get (core.js:3228) at resolveToken (core.js:3473) at tryResolveToken (core.js:3417) at StaticInjector.push../node_modules/@angular/core/fesm5/core.js.StaticInjector.get (core.js:3314) at resolveToken (core.js:3473) at tryResolveToken (core.js:3417) at StaticInjector.push../node_modules/@angular/core/fesm5/core.js.StaticInjector.get (core.js:3314) at resolveNgModuleDep (core.js:19784) at NgModuleRef_.push../node_modules/@angular/core/fesm5/core.js.NgModuleRef_.get (core.js:20473) at injectInjectorOnly (core.js:1194) at resolvePromise (zone.js:831) at resolvePromise (zone.js:788) at zone.js:892 at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:423) at Object.onInvokeTask (core.js:16147) at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:422) at Zone.push../node_modules/zone.js/dist/zone.js.Zone.runTask (zone.js:195) at drainMicroTaskQueue (zone.js:601)
私の場合の解決方法
Httpを使う場合の解決方法です。
まず、app.module.tsでHttpModuleをimportします。
import { HttpModule, JsonpModule} from '@angular/http';
JsonpModuleは、使わないなら要らないです。
そして
imports: [ BrowserModule, AppRoutingModule, HttpModule, // これを追加 JsonpModule ],
以上です!なんかわからないことあったら聞いてください。