Angular2 / material 2:当以编程方式更改值时,md-input-container标签不会重置float

时间:2017-01-03 22:50:51

标签: validation angular typescript angular2-forms angular-material2

我在使用@ angular / material的md-input-containers和被动表单模块时遇到了问题。

我正在制作一个包含三个md-inputs的登录表单,这些表单都使用FormBuilder的{​​{1}}绑定到值。那里的一切都很好。

我的问题是,在FormGroup函数中,如果输入的凭据无效,我将重置表单。使用ngSubmit的{​​{1}}方法会将值重置为默认值,但.reset()中的浮动标签不会重置为原始位置,因为它们应位于空字段上。我猜材料设计指令正在寻找一个模糊事件来更新这个,但我不知道,我不知道如何强制这种情况发生。

这是FormGroup函数:

md-input-containers

并且在调用ngSubmit时,表单将重置为默认值(空字符串),但标签仍将浮动:

Labels still float. I reset Company ID for reference.

有关如何解决此问题的任何想法?我真的不想调用 submitForm(username: string, password: string, companyID: any):void { this.userService.login(username, password, companyId) .then(() => { this.router.navigate(['main']); }) .catch(() => { this.loginForm.reset(); }) } ,虽然我已经尝试这样做以强制模糊并且没有解决它。

1 个答案:

答案 0 :(得分:0)

尝试使用md-input控件而不是md-input-container中包含的输入。 它对我有用。