尝试将本机选择与角度材质一起使用时出现错误

时间:2019-01-30 13:05:28

标签: angular angular-material

我想使用本机选择,因为它更易于访问,而不是使用mat-select。我已按照documented example的字面意思尝试开始使用

<mat-form-field>
    <select matNativeControl required>
        <option value="volvo">Volvo</option>
        <option value="saab">Saab</option>
        <option value="mercedes">Mercedes</option>
        <option value="audi">Audi</option>
     </select>
 </mat-form-field>

但是我得到了这个,ERROR Error: mat-form-field must contain a MatFormFieldControl.

在我的模块中,我有:

import { CommonModule } from '@angular/common';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { BrowserModule } from '@angular/platform-browser';
import { MatButtonModule, MatTabsModule, MatSelectModule, MatCardModule, MatSlideToggleModule, MatFormFieldModule,
     MatInputModule, MatProgressSpinnerModule, MatTableModule, MatTooltipModule } from '@angular/material';*/
import { MyComponent } from './my.component';

@NgModule({
    imports: [
        FormsModule,
        BrowserModule,
        MatButtonModule,
        MatTabsModule,
        MatSelectModule,
        MatCardModule,
        MatSlideToggleModule,
        MatFormFieldModule,
        MatInputModule,
        MatProgressSpinnerModule,
        MatTableModule,
        MatTooltipModule
    ],
    declarations: [
        MyComponent
    ],
    providers: []
})
export class MyModule { }

我已经搜索了此错误,一般的解决方案是添加一个缺少的模块,但是我看不到这里缺少的内容。 mat-select不会导致错误。我开始怀疑文档是错误的还是过时的。

1 个答案:

答案 0 :(得分:1)

您必须在select中使用材料inputmat-form-field。 如果您想使用本机选择,则不能使用mat-form-fielddiv中的某些样式的简单mat-form-field

编辑抱歉,此解决方案工作在matNativeControl中使用select

但是请尝试将材料更新到最新版本:

ng update @angular/material