angular - 为什么 matInput 文本字段显示 [object FocusEvent] 而不是我在 Angular 8 中使用(模糊)的实际文本
问题描述
fetchContractNumber(contractNumber: any): void {
this.changeField(contractNumber, 'vehicle.previousContractNumber');
if (contractNumber) {
this.s1 = this.facade.fetchContractNumber(this.equipmentModel.previousContractNumber).subscribe(data => {
this.equipmentModel.previousWarrantyExpiryOdometer = data.data.contracts[0].expirationOdometer;
this.equipmentModel.previousWarrantyExpiryDate = data.data.contracts[0].expirationDate;
this.changeField(data.data.contracts[0].expirationOdometer, 'vehicle.previousWarrantyExpiryOdometer');
this.changeField( data.data.contracts[0].expirationDate, 'vehicle.previousWarrantyExpiryDate');
});
}
}
<mat-form-field class="w-4/12 xl:w-4/12 pr-1">
<input
matInput
(blur)="fetchContractNumber($event)"
name="previousContractNumber"
[ngModel]="equipmentModel.previousContractNumber"
placeholder="{{ 'previouscontractnumber' | translate }}"
type="text"
#previousContractNumber="ngModel"
[errorStateMatcher]="errorStateMatcher('vehicle.previousContractNumber', dealError)"
[ngDave2EditableField]="dealIsLocked"
editableFieldgroup="equipment"
editableFieldCode="previousContractNumber"
[editableDealStatus]="dealStatus"
/>
<button
mat-button
*ngIf="equipmentModel.previousContractNumber && !dealIsLocked"
matSuffix
mat-icon-button
aria-label="Clear"
(click)="resetPreviousContractNumberFields()"
>
<mat-icon>close</mat-icon>
</button>
<mat-error>
{{ 'required' | translate }}
</mat-error>
</mat-form-field>
解决方案
从您的方法看来,您似乎希望从 blur 的事件绑定传递的 $event 是一个 contractNumber (所以可能是一个数字),但事实并非如此。你可能想要 $event.target.value
推荐阅读
- serial-port - 如何实现 TxDataAvailable。如何知道要发送到 USB 层的缓冲区大小
- npm - 如何比较两个工件 npm 存储库
- scala - 在 Scala 3 中区分联合类型和类型参数
- vb.net - Visual Studio 2019 控制台应用程序 .net 5 无法识别“我的”服务
- python - PyQt 中的 GridLayout 位置
- java - java.lang.IllegalStateException: JBWEB002004: 超过请求参数的最大数量(GET 加 POST)
- shell - 每当修改特定文件夹时创建 tar 文件的 Shell 脚本
- authentication - 在登录提供程序中删除通过社交登录注册的用户时删除
- python - 无法获取安装 python 包安装的 URL
- flutter - 为什么flutter web show会显示特殊字符而不是文字?