2017-01-15 7 views
0

私はAngular2チュー​​トリアルに従っています:Tour of Heroesこれまでのところすべてが期待どおりに機能していました。しかし、上記のリンクのポイントで私は通過することはできません。constを使用しているときにコードが正しくレンダリングされない

左のコードは、私がそれを行う方法を示していますが、何らかの理由でアプリケーションが正しくレンダリングされません。しかし、右のコードでわかるように私が修正を加えると、アプリケーションは正しくレンダリングします。しかし、私はチュートリアルで提案したのと同じ方法でそれを行う必要があります。

image

おそらく問題は、私は知らないconst変数、です。

これを解決する方法はありますか?

+1

例を誤解しました。 'const'はアクセス修飾子ではないので、クラス定義内では有効ではありません。正しい配置については、ページの下部にある「app.component.ts」の完成版を参照してください。 – jonrsharpe

+0

しかし、私はこれまでにこのチュートリアルで行ってきたように、私が提案したコードをコピーしてきました。これが失敗するのは初めてです。彼らのコード提案では、彼らは 'const'を使います。 – nightclub

+0

**完全な例**を見てください。https://angular.io/docs/ts/latest/tutorial/toh-pt2.html#!#the-road-weve-travelledの直上です。 'const'はクラスの外側で有効です。クラスの内部では、 'クラスメンバーが 'const'キーワードを持つことができないというエラーがどこかにあるはずです。 – jonrsharpe

答えて

0

クラスメンバをconstで定義することはできません。クラスメソッド内でconstを定義することができます。

クラスメンバのためにプライベートの読み取り専用タイプスクリプトアクセサーを使用できます。

+0

クラスメンバのためのprivate readonly typescriptアクセサ? – nightclub

+0

メンバーのプロパティにプライベートの読み取り専用を付けます。プライベート、読み取り専用、またはconstをどこで使うべきかわからない場合は、おそらくそれらが必要ないことを意味します。 – Martin

+0

それから私は 'const'を削除してチュートリアルを進めるつもりです。ありがとう! – nightclub

関連する問題