vuetify icon not showing
I am using vue.js
and vuetify
. I want to add an icon but it is not working as expected (not rendered).
How can I fix this?
Please refer to the following code:
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>
I want it to look like an icon, not code.
Solution 1:
With Vue CLI 3 we have no index.html in the src folder so alternatively you can
npm install --save material-design-icons-iconfont
and import it in the main.js file
import 'material-design-icons-iconfont/dist/material-design-icons.css'
Solution 2:
Had this issue with Vuetify 2.1.3 installed via the vuetify-loader 1.2.2
Seems like previous solutions do not work becues the default icons library has changed to mdi-font.
Solution was:
yarn add @mdi/font
And in the file main.js
(or plugins/vueitfy.js
if exists) add this line below the imports
import '@mdi/font/css/materialdesignicons.css'
Solution 3:
Worked for me:
npm install @mdi/font
and then putting this inside plugins/vuetify.js:
import '@mdi/font/css/materialdesignicons.css'
Using "vuetify": "^2.3.19", "vue": "^2.6.12",
Solution 4:
You can face the exact same issue if you use Nuxt.js. To solve this issue, you have to declare the Material Design icons in your CSS ... through the CDN, for example, as below:
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'
}
]