0

我正在使用 angular2 formsModule 和material2 library

当我试图检查标签form之外的有效性时,我得到一个form

错误:无法读取未定义的属性“有效”

form标签被包装到标签中md-tab,我注意到错误取决于它。

错误:

<button (click)="check(fooForm.valid)"></button>
<md-tab-group>
    <md-tab label="One">
        <form (ngSubmit)="save()" #fooForm="ngForm">
            <input name="One"></input>
            <input name="Two"></input>
        </form>
    </md-tab>
</md-tab-group>

没有错误:

<md-tab-group>
    <md-tab label="One">
        <button (click)="check(fooForm.valid)"></button>
        <form (ngSubmit)="save()" #fooForm="ngForm">
            <input name="One"></input>
            <input name="Two"></input>
        </form>
    </md-tab>
</md-tab-group>

有没有人发现我做错了什么?对不起我的英语不好。

4

1 回答 1

0

据我所知, fooform 是在视图初始化之后初始化的,但是您的函数在此生命周期之前运行。所以我会像这样更改我的代码

check(fooForm)在 html 和 js 中

check(fooForm) {
 return fooForm && fooForm.vali
}
于 2016-11-01T21:09:18.530 回答