使っています vue.js
およびvuetify
。アイコンを追加したいのですが、機能しません。 (レンダリングされません)
どうすれば修正できますか?
次のコードを参照してください
main.js
import Vue from 'vue'
import Vuetify from "vuetify";
import "vuetify/dist/vuetify.min.css";
Vue.use(Vuetify);
index.html
<link href='https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900|Material+Icons' rel="stylesheet">
calendar.vue
<i class="material-icons">
keyboard_arrow_down
</i>
コードではなくアイコンのように見せたい
Vue CLI 3では、srcフォルダにindex.htmlがないので、代わりに
npm install --save material-design-icons-iconfont
main.jsファイルにインポートします
import 'material-design-icons-iconfont/dist/material-design-icons.css'
Vuetify-loader 1.2.2を介してインストールされたVuetify 2.1.3でこの問題が発生しました
デフォルトのアイコンライブラリがmdi-fontに変更されているため、以前のソリューションは機能しないようです。
解決策は:
yarn add @mdi/font
そして、ファイルplugins/vueitfy.jsで、インポートの下にこの行を追加します
import '@mdi/font/css/materialdesignicons.css'
Nuxt.jsを使用すると、まったく同じ問題に直面する可能性があります。この問題を解決するには、CSSでマテリアルデザインアイコンを宣言する必要があります。たとえば、次のようにCDNを使用します。
link: [
{ rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' },
{
rel: 'stylesheet',
href:
'https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Material+Icons'
}
]
VuetifyでNuxtを使用していて、マテリアルアイコンがFirefoxに表示されない場合:
npm install import @mdi/font
次に、nuxt.config.js
次のエントリをcss
フィールドに追加します。
css: ["@mdi/font/css/materialdesignicons.css"]
最新のリリース済みドキュメントを読み、index.htmlに以下のコードを含めます
<link href="https://cdn.jsdelivr.net/npm/@mdi/[email protected]/css/materialdesignicons.min.css" rel="stylesheet">