[Angular] チュートリアル「TOUR OF HEROES」で発生した問題と解決方法

Angular のチュートリアル「TOUR OF HEROES」を進める中で、問題が発生した部分があったので、解決方法を忘れないようにメモしておきます。

問題 1: Promise 型が見つからない

5.Services のページ – Async services and Promises – The hero service makes a Promise の項

「src/app/hero.service.ts」ファイルの getHeroes メソッドの戻り値を、Hero[] 型から Promise<Hero[]> 型に変更したところ、

「Promise が見つかりません。」

というコンパイルエラーが発生しました。

解決方法:「src/tsconfig.json」の compilerOptions.target の値を “es5” から “es6” に変更したら、エラーが解消できました。

問題 2: Observable<T>.switchMap メソッドが見つからない

6.Routing のページ – Revise the HeroDetailComponent の項

「src/app/hero-detail.component.ts」ファイルの ngOnInit メソッド内で、Observable<T>.switchMap メソッドを呼ぶ処理を追加したところ、

「プロパティ ‘switchMap’ は型 ‘Observable<{[key: string]: any; }>’ に存在しません。」

というエラーが発生しました。

エディターとして Visual Studio 2015 Update 3 を使っていたのですが、それに起因する現象のようです。(試しに Visual Studio Code で開いたら、エラーが出ませんでした。)

解決方法:TypeScript for Visual Studio 2015 をインストールしたら、エラーが解消できました。下記のページからダウンロードできます。

KPDN

KPDN has written 21 articles

プログラミングとゲームが好きな、しがないにゃんこ好きです。わんこも同じぐらい好きです。最近、物忘れどんどんが酷くなってきた。

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">