新しいプロジェクトを作成し、angular-material
を追加しようとしています。
app
フォルダーにmaterial.module.ts
を作成しました:
import { NgModule } from '@angular/core';
import {
MatButtonModule,
MatMenuModule,
MatIconModule,
MatCardModule,
MatSidenavModule,
MatFormFieldModule,
MatInputModule,
MatTooltipModule,
MatToolbarModule
} from '@angular/material';
@NgModule({
imports: [
MatButtonModule,
MatMenuModule,
MatIconModule,
MatCardModule,
MatSidenavModule,
MatFormFieldModule,
MatInputModule,
MatTooltipModule,
MatToolbarModule,
],
exports: [
MatButtonModule,
MatMenuModule,
MatIconModule,
MatCardModule,
MatSidenavModule,
MatFormFieldModule,
MatInputModule,
MatTooltipModule,
MatToolbarModule
]
})
export class MaterialModule { }
それをコンポーネントの1つにインポートしました。
import { MaterialModule } from '../material.module';
さらに、angularマテリアルをindex.html
にセットアップしました
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
私のstyle.css
で
@import '~@angular/material/prebuilt-themes/pink-bluegrey.css';
私はテストとしてmaterial-icon
を示したので、それが働いていることを知っています:
<i class="material-icons">face</i>
しかし、フッターを作成しようとすると失敗し、次のメッセージが表示されます。
不明なエラー:テンプレート解析エラー: 'mat-toolbar'は既知の要素ではありません:1. 'mat-toolbar'がAngularコンポーネントである場合、それがこのモジュールの一部であることを確認します。 2.「mat-toolbar」がWebコンポーネントの場合、「CUSTOM_ELEMENTS_SCHEMA」をこのコンポーネントの「@ NgModule.schemas」に追加して、このメッセージを抑制します。
それは、がコンポーネント宣言を含むモジュールにモジュールをインポートする必要があるためですnotコンポーネント自体に:
app.module.ts
import { MaterialModule } from './material.module';
@NgModule({
imports: [
// ...
MaterialModule
],
declarations: [
MyCoolComponent,
// ...
]
})
追伸マテリアルアイコンを使用する正しい方法は、MatIcon
コンポーネントを使用することです。使用例:
<mat-icon>home</mat-icon>
ここで私のためにうまくいきます: https://stackblitz.com/edit/angular-w9ckf8
リンクを見て、足りないものがないか確認してください。