现在readData(){
let i=0
let len = elements.length
for (; i < len; i++){
this.setState({progress:i/len});
this.process(elements[i]) // take some time
}
}
在加载页面并输入输入栏时有效,但我想仅在单击“添加”按钮时激活它。如果你能给出建议,那就太有用了。
md-error
import { Component, OnInit } from '@angular/core';
import { FormGroup, FormControl, FormBuilder,Validators} from '@angular/forms'
import { MdInputModule } from '@angular/material'
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent implements OnInit {
public details: [Detail];
sample = new FormControl('',[
Validators.required,
])
myForm = this.builder.group({
sample: this.sample
});
constructor(
private builder:FormBuilder,
private MdInputModule: MdInputModule
){}
addDetail(){
if(this.sample.errors !==null){
console.log("データないよ")
}else
{console.log(this.sample.value)}
}
onSave(){}
ngOnInit() {}
}
class Detail{
public sample : FormControl;
}
```
答案 0 :(得分:0)
在您的打字稿中创建变量调用submitted
并将其设置为false
。
然后在输入上使用(change)
,如下所示:
<input mdInput type="number" (change)="submitted=false".
required placeholder="数量" [formControl] ="sample"/>
在您addDetail()
方法上添加:this.submitted = true;
然后在你的md-error add:
<md-error *ngIf="this.sample.errors?.required && submitted">
need to inform.
</md-error>
所以每次输入值改变时,它都假定你还没有提交。然后,当您提交时,您将变量设置为true
,而*ngIf
将评估这两个条件
希望它有所帮助。
此致