【发布时间】:2021-11-26 13:18:40
【问题描述】:
我继承了一个 Angular 项目,ng build 产生了几十个错误。错误类似于“不知道元素”和“不知道...的属性”。
我首先完成了 npm install 以确保所有模块都在那里。
以下是一些错误:
"'mat-icon' 不是已知元素",
"没有找到与 exportAs 'ngModel' 相关的指令",
“无法绑定到 'ngModel',因为它不是 'input' 的已知属性”,
"'mat-form-field' 不是已知元素",
“'mat-toolbar' 不是已知元素”,
“无法绑定到 'selected',因为它不是 'mat-chip' 的已知属性”,
'mat-chip-list' 不是已知元素”,“'mat-tab' 不是已知元素”。
似乎大多数错误都与材料库有关。我的 app.module.ts 是:
import { MaterialModule } from './material';
import { MatBadgeModule } from '@angular/material/badge';
import { MatChipsModule } from '@angular/material/chips';
import { MatDialogModule } from '@angular/material/dialog';
import { MatExpansionModule } from '@angular/material/expansion';
import { MatFormFieldModule } from '@angular/material/form-field';
import { MatInputModule } from '@angular/material/input';
import { MatMomentDateModule } from '@angular/material-moment-adapter';
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
import { MatRadioModule } from '@angular/material/radio';
这些的导入包含:
MaterialModule, MatBadgeModule, MatChipsModule, MatDialogModule, MatExpansionModule, MatFormFieldModule, MatInputModule, MatMomentDateModule, MatProgressSpinnerModule, MatRadioModule,
有没有什么方法可以一举搞定每个材质子模块?还有其他想法吗?
【问题讨论】:
-
你先运行 npm install 了吗?
-
是的,我有。我已经更新了帖子以反映这一点。
-
一些 Angular 材质组件,您还必须在组件文件中导入才能使用它。基本上这是您必须关注的第一个错误 -
mat-icon确保将其导入到您正在使用它的组件中。 -
我没有在导入中看到 MatIconModule....
-
只有当你在组件代码中使用它时,你才需要在组件中导入东西——如果它只是在模板中——不需要导入,我也不需要做这样的事情
标签: angular