我正在使用Angular Material开展Angular 4项目。
我有这个屏幕,我以前有材料卡和材料图标。
我只是处理MatCardModule的导入/导出。卡是显示,很好。我添加了一个Material Icon。图标也会显示,但我不处理MatIconModule的导入/导出。
这是一个掠夺者:https://plnkr.co/edit/UOxDkqmWjg0uu5QNrl7c?p=preview
main.ts文件:
import {platformBrowserDynamic} from '@angular/platform-browser-dynamic';
import {BrowserModule} from '@angular/platform-browser';
import {BrowserAnimationsModule} from '@angular/platform-browser/animations';
import {NgModule} from '@angular/core';
import {MatCardModule} from '@angular/material';
import {CardOverviewExample} from './card-overview-example';
@NgModule({
declarations: [CardOverviewExample],
imports: [
BrowserModule,
BrowserAnimationsModule,
MatCardModule
],
exports: [
MatCardModule
],
bootstrap: [CardOverviewExample]
})
export class PlunkerAppModule {}
platformBrowserDynamic().bootstrapModule(PlunkerAppModule);
card-overview-example.ts文件:
import {Component} from '@angular/core';
@Component({
selector: 'card-overview-example',
template: `
<mat-card>Simple card</mat-card>
<mat-icon class="material-icons" aria-hidden="true">
important_devices
</mat-icon>
`
})
export class CardOverviewExample {}
我不再需要材料卡了,所以我在HTML文件中注释声明并导入/导出模块。
我的代码是破解。控制台中的错误表示mat-icon不是已知元素。
这是一个掠夺者:https://plnkr.co/edit/UvhxpOkOWhaMKX2tkb7A?p=preview
main.ts文件:
import {platformBrowserDynamic} from '@angular/platform-browser-dynamic';
import {BrowserModule} from '@angular/platform-browser';
import {BrowserAnimationsModule} from '@angular/platform-browser/animations';
import {NgModule} from '@angular/core';
//import {MatCardModule} from '@angular/material';
import {CardOverviewExample} from './card-overview-example';
@NgModule({
declarations: [CardOverviewExample],
imports: [
BrowserModule,
BrowserAnimationsModule,
//MatCardModule
],
exports: [
//MatCardModule
],
bootstrap: [CardOverviewExample]
})
export class PlunkerAppModule {}
platformBrowserDynamic().bootstrapModule(PlunkerAppModule);
card-overview-example.ts文件:
import {Component} from '@angular/core';
@Component({
selector: 'card-overview-example',
template: `
<!-- <mat-card>Simple card</mat-card> -->
<mat-icon class="material-icons" aria-hidden="true">
important_devices
</mat-icon>
`
})
export class CardOverviewExample {}
是的,当然。如果我处理MatIconModule的导入/导出,则显示图标,很好。
这是一个掠夺者:https://plnkr.co/edit/Mn12NIuES35G2xOB0CrA?p=preview
main.ts文件:
import {platformBrowserDynamic} from '@angular/platform-browser-dynamic';
import {BrowserModule} from '@angular/platform-browser';
import {BrowserAnimationsModule} from '@angular/platform-browser/animations';
import {NgModule} from '@angular/core';
import {MatIconModule} from '@angular/material';
import {CardOverviewExample} from './card-overview-example';
@NgModule({
declarations: [CardOverviewExample],
imports: [
BrowserModule,
BrowserAnimationsModule,
MatIconModule
],
exports: [
MatIconModule
],
bootstrap: [CardOverviewExample]
})
export class PlunkerAppModule {}
platformBrowserDynamic().bootstrapModule(PlunkerAppModule);
card-overview-example.ts文件:
import {Component} from '@angular/core';
@Component({
selector: 'card-overview-example',
template: `
<!-- <mat-card>Simple card</mat-card> -->
<mat-icon class="material-icons" aria-hidden="true">
important_devices
</mat-icon>
`
})
export class CardOverviewExample {}
但是为什么我在使用MatCardModule时不需要导入/导出MatIconModule的句柄?
答案 0 :(得分:0)
似乎要修复Angular 5.现在,您必须导入MatIconModule。