angular - Ionic 3 - 无效时更改输入和标签的颜色
问题描述
当 FormControl 无效时,如何更改“离子标签”和“离子输入” (边框底部)的颜色?像这样:
字段有效:
字段无效:
<ion-content>
<form (ngSubmit)="save(f)" #f="ngForm">
<ion-item>
<ion-label stacked>City:</ion-label>
<ion-input [(ngModel)]="object.city" name="city" required></ion-input>
</ion-item>
</form>
</ion-content>
解决方案
你可以这样做。
HTML
<form [formGroup]="todo" (ngSubmit)="logForm()">
<ion-item>
<ion-label [color]="color" floating>Todo</ion-label>
<ion-input formControlName="title" [ngStyle]="{'border-bottom':error}"></ion-input>
</ion-item>
<button ion-button type="submit">Submit</button>
</form>
TS
private todo: FormGroup;
color = "gray";
error = '';
constructor(private formBuilder: FormBuilder) {
this.todo = this.formBuilder.group({
title: ["", Validators.required]
});
}
logForm() {
if (this.todo.invalid) {
this.color = "danger";
this.error = '1px solid red';
} else {
this.color = 'gray';
this.error = '';
}
console.log(this.todo);
}
推荐阅读
- javascript - 电子生成器。仅在构建 Mac 应用程序时如何挂钩 afterSign
- c++ - std::stable_partition() 和 std::partition() 有什么区别?
- drupal-8 - Drupal 8 中的权限表在哪里?
- javascript - 无法执行 javascript onclick 事件
- cmake - 链接由依赖库链接的第三方库,使用 Cmake
- opencv - 如何从一本书的页面中提取一堆图像?
- joomla - 带有插入图像按钮的 Joomla 4 alpha 和模态窗口
- javascript - 使用 javascript 将元素内的数字四舍五入
- sql-server - 带有 Logsatsh 的 JDBC MSSQL 以连接到 Montoring DB
- typescript - TypeScript 中的 private 关键字和 private 字段有什么区别?