私は、Angular2で実質的に新しく、Angular 2フロントエンドでプロジェクトを継承しました。コンソールで新しいAngular 4.0に切り替えた後、次のエラーが表示されます。
「compatibility.ts:221 Angular Materialコアテーマが見つかりませんでした。ほとんどのMaterialコンポーネントは期待どおりに動作しない可能性があります。詳細については、テーマガイドを参照してください。 https://material.angular.io/ガイド/テーマ "
Mdb.min.cssはapp/assets/cssフォルダーにあります。 package.jsonの仕様は次を示しています。
"@angular/common": "^4.0.0",
"@angular/compiler": "^4.0.0",
"@angular/core": "^4.0.0",
...
"angular-bootstrap-md": "*"
エラーを修正する方法は?
グローバルcssまたはsassファイルにテーマをインポートする必要があります。
@import "~@angular/material/prebuilt-themes/Indigo-pink.css";
または、代わりにindex.html
ファイル:
<link href="node_modules/@angular/material/prebuilt-themes/Indigo-pink.css" rel="stylesheet">
テーマのドキュメント 既に述べたようにAngular Materialは以下のビルド済みテーマを提供します:
これらのテーマのいずれかを含めるか、独自のカスタムテーマを作成する必要があります。
@importをstyles.css
に追加しても機能しません。テーマをangular.json
に追加するとうまくいきませんでした
次の方法を使用して、デフォルトの角材テーマを上記の角材テーマのいずれかに置き換えることができます。
事前に作成された角材のテーマをstyles.cssファイルに直接含めることができます。
@import '@angular/material/prebuilt-themes/deeppurple-amber.css';
または、index.htmlファイルのheadタグ内に次を追加します。
<link href="node_modules/@angular/material/prebuilt-themes/deeppurple-amber.css" rel="stylesheet">
または、angle.jsonファイルで次を更新します。
"styles": [
{
"input": "node_modules/@angular/material/prebuilt-themes/deeppurple-amber.css"
},
"src/styles.css"
],
Srcフォルダーにあるstyles.cssまたはstyles.scssに以下のコードを挿入してください。
@import "../node_modules/@angular/material/prebuilt-themes/deeppurple-amber.css";
Prebuilt-themesフォルダーの下のcssを選択できます。