問題タブ [angular-template-form]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
815 参照

angular - angularの子コンポーネントでテンプレート駆動フォームを検証する方法

私はAngular 10に取り組んでいます。角度のあるテンプレート駆動型およびリアクティブフォームに問題があるのは3日です。

やりたいこと:多くの子コンポーネントを持つ複雑なフォームを作成します (多くのコードを分離するため)。次に、1 回のボタン クリックで、すべてのフォームと子コンポーネントを検証します。どういうわけか子コンポーネントを検証したい。

私が作成したもの:双方向バインディングを備えたテンプレート駆動型のフォーム。これは、私の状況では簡単で不要であると考えているためです。

基本フォームに対してのみ検証を機能させることができました。子コンポーネントではできませんでした。この問題に関する多くの投稿を見て、多くのことを試しましたが、非常に混乱しています。

私のコード:

mainForm.html

childcomponent.html:

childrencomponent.ts:

親.ts

}

コードはそのまま動作します。問題は、[登録] を押したときに、子コンポーネントの内容が検証されないことです (この場合、ペットの名前と性別)。

デモ画像:フォーム

私が持っている質問:

  1. テンプレート駆動型またはリアクティブ フォームを使用する必要がありますか? テンプレート駆動のフォームは簡単で、私の状況では必要ないと前に言いましたが、これについてはよくわかりません。

  2. フォームを子に渡す必要がありますか、それとも子をメインフォームに渡す必要がありますか? テンプレート駆動フォームを使用して子コンポーネントに検証を実装する方法はありますか?

誰かが私に正しいことを教えてくれますか、フィードバックや提案をしてください。遠慮なく何でも聞いてください。もっと詳しく知りたい場合は。

お時間をいただきありがとうございます。

0 投票する
1 に答える
403 参照

angular - Angular 10 でテンプレート駆動のフォームの変更をリッスンする

angular 10アプリにテンプレート駆動のフォームがあり、変更をリッスンして、「変更されました。更新を送信してください」というメッセージをユーザーに表示できるようにしています。

HTML

機会.component.ts

しかし、次のエラーが発生します。

ngForm が初期化されていないためです。これは同様の質問です: https://ng-run.com/edit/CGoUiw88N7OmI7x0YmHJで同じ問題を抱えている実行中の回答がある、角度のあるテンプレート駆動のフォーム変更をリッスンする方法。

フォームを取得して、変更をリッスンする前にフォームが存在することを確認するにはどうすればよいですか? Angular 10.2.0 を使用しています

これが違いを生むかどうかはわかりませんが、ページ全体が

これは、ngOnInit での API 呼び出しの後に設定されます

true (loaded の場合) と undefined (this.ngForm の場合) を出力します。

更新*

データが戻ってきた後にのみフォーム全体がロードされているためです。ページ上にないため、@ViewChild をフックできます。*ngIf をフォーム内の div に配置しましたが、正常に動作しています

0 投票する
0 に答える
42 参照

html - ngModelで使用するとMatエラーが表示されない

以下の方法でマットエラーを使用しています

errorMessage にテキストがあってもマットエラーが表示されない、_control.control が formControl を参照している formControl.errors も出力していた

私はエラーオブジェクトを取得しています.changeMethodで私はタッチしたようにフォームを作成しています.

エラーが表示されない理由は何でしょうかフォームコントロールの値も表示されています