日付の選択に p-calendar を使用しています。ここで、条件ベースにクラス属性を設定したいと思います。属性を設定するには、 setElementAttribute 関数を使用していますが、エラーが発生します'vendor.bundle.js:70655 TypeError: Cannot read property 'setAttribute' of undefined '
。通常の入力または選択タグでは機能しますが、p-calendar タグでは機能しません。
これはHTMLコードです
<p-calendar [showIcon]="true"
name="date"
id="dateId"
#date
[(ngModel)]="dateValue"
[required]="isRequired"
autoClear="true"
(onSelect)="selectedDate(date.value)"
[ngModelOptions]="{standalone: true}"
(data)="refreshValue($event)"
dateFormat="mm/dd/yy"
hourFormat="24">
</p-calendar>
これは ts ファイルのコードです
@ViewChild('date ') date : any;
selectedDate(date) {
if (date != null) {
this._renderer.setElementAttribute(this.date.nativeElement, 'class', 'form-control ng-pristine ng-valid ng-touched');
} else {
if(this.isRequired){
this._renderer.setElementAttribute(this.date.nativeElement, 'class', 'form-control ng-touched ng-dirty ng-invalid');
this.Flag = false;
}
}
}
これはエラーです