私は角型cliプロジェクトを開発し、検証するために多くのフォームを取得しました。 app-rootが表示されたら、フォーム検証メッセージを追加する必要があります。 私の現在の実装は以下の通りです。角2は本文にhtmlを追加します
<app-root class="" _nghost-c0="" ng-version="4.3.4">
<!-- other html content goes here...... -->
<form [formGroup]="form">
<label for="name">Name: </label>
<input type="text" [formControl]="nameCtrl"/>
<div *ngIf="!nameCtrl.valid && nameCtrl.hasError('required')"
class="error"><validation-msg>Name is required.</validation-msg></div>
<div *ngIf="!nameCtrl.valid && nameCtrl.hasError('badName')"
class="error"><validation-msg>Name must start with <tt>pee</tt>.</validation-msg></div>
</form>
<!-- other html content goes here...... -->
</app-root>
表示すると、次のようなエラーメッセージが表示されます。 validation-msgは、単純なテンプレートを持つコンポーネントです。そのコンテンツはapp-rootの外側に追加する必要があります。
<app-root class="" _nghost-c0="" ng-version="4.3.4">
<!-- other html content goes here...... -->
</app-root>
<validation-msg-content>
<div>Name is required.</div>
</validation-msg-content>
Iドン:今、あなたのようにgetErrorメソッドを定義することができ
と親コンポーネントのHTML
Angularのことはよく知っていますが、それを達成するためには一時的な回避策が必要なようです。 _if_の内部にスクリプトタグを挿入していますか? –
基本的に、あるコンポーネントから別のコンポーネントにデータを渡す必要があります。あなたはそれについてもっと読むことができますhttps://angular.io/guide/component-interaction – KIA
更新された質問を確認してください。コンポーネント間でデータを共有することではありません。 app-root要素のpout側にコンポーネントテンプレートを追加することです。 –