mat-form-field必须包含MatFormFieldControl。即使我添加了MatFormFieldModule

时间:2018-07-10 08:22:42

标签: angular-material angular-material-6

这里是Angular Material的新手,请帮助我为什么会出现错误。我是从https://material.angular.io/components/form-field/examples

复制代码的
<div class="example-container">
  <mat-form-field>
    <input matInput placeholder="Input">
  </mat-form-field>

  <mat-form-field>
    <textarea matInput placeholder="Textarea"></textarea>
  </mat-form-field>

  <mat-form-field>
    <mat-select placeholder="Select">
      <mat-option value="option">Option</mat-option>
    </mat-select>
  </mat-form-field>
</div>

这是我从该网址复制的代码 App.module.ts

import {MatFormFieldModule} from '@angular/material/form-field';
import {MatInputModule} from '@angular/material/input';
  imports: [
MatFormFieldModule,MatInputModule]

5 个答案:

答案 0 :(得分:2)

您好像忘记了MatSelectModule

import {MatFormFieldModule} from '@angular/material/form-field';
import {MatInputModule} from '@angular/material/input';
import {MatSelectModule} from '@angular/material/select';
...
imports: [MatFormFieldModule,MatInputModule,MatSelectModule]

答案 1 :(得分:2)

尝试删除输入框的占位符=“输入”。 尝试一下对我有用。

答案 2 :(得分:0)

如果有帮助,这是我使用材料的应用的app.module.ts

import {
  MatFormFieldModule,
  MatInputModule,
} from '@angular/material';

....

@NgModule({
  imports: [
    .....,
    MatFormFieldModule,
    MatInputModule,
    .....,
  ],
    .....
})
export class AppModule { }

答案 3 :(得分:0)

从'@ angular / material'导入{MatInputModule};

@NgModule({

导入:[

MatInputModule

], 出口:[ MatInputModule

] })

在app.module.ts文件中

答案 4 :(得分:0)

从输入代码中删除占位符。

您可以使用

而不是使用占位符

<mat-label>.....</mat-label>

这是代码:


 <mat-form-field appearance="outline">
       <input matInput required />
       <mat-label>Username</mat-label>
 </mat-form-field>