テンプレートのHTMLヒーローの詳細内容を
<div>
で囲みます。その後、ngIf組込みディレクティブを追加し、コンポーネントのselectedHeroプロパティに設定します。ngIfはAngular Heroesチュートリアルには価値がありません
<div *ngIf="selectedHero">
<h2>{{selectedHero.name}} details!</h2>
<div><label>id: </label>{{selectedHero.id}}</div>
<div>
<label>name: </label>
<input [(ngModel)]="selectedHero.name" placeholder="name"/>
</div>
アプリが失敗しなくなりましたし、名前のリストがブラウザに再び表示されます。
実際、ngIfディレクティブがないとアプリケーションが失敗することはありません。それをテストするために、私は入力フォームを空にして、バインドされたリストされたアイテムを空にしますが、ngIfが含まれているかどうかにかかわらず、何も起きません。
コンソールにエラーはありませんか? 'selectedHero'が未定義またはnullの場合、' selectedHero.name'は失敗するはずです。 –
@MikeMcCaughanゼロエラー – usefulBee
それでは、チュートリアルのバグだと思います。 Angularチームに連絡してください... –