AbstractControlDirectiveのプロパティエラー
私は次のコードを持っています:
<div>
<label for="fullname">Passenger name:</label>
<input
type="text"
name="fullname"
required
#fullname="ngModel"
[ngModel]="detail?.fullname">
<div class="error" *ngIf="fullname.errors?.required && fullname.dirty">
Passenger name is required.
</div>
</div>
ngModel参照のerrors
プロパティ内のプロパティを使用すると、そのエラーが表示されます。
これはテンプレート駆動型フォームの有効な構文であるため、エラーになることはありません。
#149が重複しているため終了
私は上記のアプローチで試しましたが、惨めに失敗しました。
このコードを見てください-
<div *ngIf="username.errors.minlength">Minimum length should be {{username.errors.minlength.requiredLength}}</div>
TSコンパイラによるスローエラー-
[角度]識別子「必須」が定義されていません。 '__type'にはそのようなメンバーは含まれていません
私は同じことを試しましたが、出さないでください
例
「?」を追加してみてください 「価格」の後。
「」
<div *ngIf="firstName.errors.required">First Name is required.
<div *ngIf="firstName.errors.minlength">First Name should be minimum 3 character.</div>
<div *ngIf="firstName.errors.pattern">First Name doesn't Match pattern.</div>
</div>
i tried this
これで問題が解決します。
を使用してboolにキャストを追加するだけです!! :
例
「?」を追加してみてください 「価格」の後。
「」価格が必要です。」私はこの問題を追加して解決しましたか? エラーの後ではなく、パラメータの前? しかし、それを詳しく説明して、疑問符を移動するだけでこの問題がどのように解決されるかを説明してみてください。 @Danielapariona
これで問題が解決します。
を使用してboolにキャストを追加するだけです!! :
乗客名が必要です。これで私の問題は解決しました! ありがとう!
例
「?」を追加してみてください 「価格」の後。
「」価格が必要です。」それは私のために働いた。 なぜ「?」を追加する必要があるのか教えてください。
これも私の問題を解決します追加するだけですか?
しかし、ブール値としてキャストすることも、?(持っていない可能性があります)を使用することも、intelliSenseが_errors_のプロパティを見つけることができないという事実を解決しません。
価格を試してください['エラー'] ['必須']
@EeeEui ? (安全なナビゲーション演算子)は、変数が無効である可能性がある場合でも変数を受け取り、内部で例外を処理します(この場合はinvalid = false)。
?
は私にはうまくいきませんでした。 !!
は私の場合にのみ機能しました。
<div class="alert alert-danger" *ngIf="username.touched && username.invalid" class="alert alert-danger">
<div *ngIf="!!username.errors.required">Username is required</div>
<div *ngIf="!!username.errors.minlength">Username Should be minimum {{ !!username.errors.minlength.requiredLength }} Charecters.</div>
</div>
エラーはまだ私のエディターで強調表示されているため、VSCodeの問題のように見えますが、Angularはそれを検出しません。 VSCodeでこれを解決するために私がしたことは、関数を使用してTypeScript側のエラーをチェックすることです。
HTML
TypeScript
これは私のために働きました、そしてそれはよりきれいに見えます。
<div class="error" *ngIf="fullname.hasError('required')">
この方法は、 fullname.hasError('invalidName')
などのカスタム検証も処理する場合でも役立ちます。
同じエラーが発生しました。 *ngIf="formGroup?.get('fullName').hasError('required')"
は私のために働いた
エラーはまだ私のエディターで強調表示されているため、VSCodeの問題のように見えますが、Angularはそれを検出しません。 VSCodeでこれを解決するために私がしたことは、関数を使用してTypeScript側のエラーをチェックすることです。
HTML
TypeScript
ビッグブラザー、これはあなたにとってあまりにも厄介です。
* ngIf = "yourForm.get( 'yourfield')。hasError( 'required')"を実行します
この問題は、非アクティブのために自動的にロックされています。
同様の問題または関連する問題が発生した場合は、新しい問題を提出してください。
自動会話ロックポリシーの詳細をご覧ください。
_このアクションはボットによって自動的に実行されました。_
最も参考になるコメント
これで問題が解決します。
を使用してboolにキャストを追加するだけです!! :
乗客名が必要です。