我正在使用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>
...
我希望它看起来像一个图标,而不是代码
enter image description here
答案 0 :(得分:36)
在Vue CLI 3中, src 文件夹中没有 index.html ,因此您也可以
class ReviewersController < ApiController
def index
# if I binding.pry here then I can access current_reviewer & current_user.
# I'm expecting to only have access to current_reviewer (because that's what the jwt token is for)
end
end
并将其导入 main.js 文件
current reviewer
答案 1 :(得分:5)
通过vuetify-loader 1.2.2安装的Vuetify 2.1.3出现了此问题
似乎以前的解决方案不起作用,因为默认图标库已更改为mdi-font。
解决方案是:
<td class="text-center">
<div class="bg-secondary cameraicon"/><!-- "bg-secondary" sets actual color of your icon -->
</td>
然后在plugins / vueitfy.js文件中,在导入内容下方添加此行
yarn add @mdi/font
答案 2 :(得分:3)
如果使用Nuxt.js,则可能会遇到完全相同的问题。要解决此问题,您必须通过CDN在CSS ...中声明Material Design图标,例如,如下所示:
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'
}
]
答案 3 :(得分:2)
如果您将Nuxt与Vuetify结合使用,则“材质图标”在Firefox中不会显示:
npm install import @mdi/font
然后在您的nuxt.config.js
的{{1}}字段中添加以下条目:
css
答案 4 :(得分:1)
如果您使用的是Vuetify,则应仅使用同时支持Material和Font Awesome图标的<v-icon>
组件:documentation
示例:
<v-icon>arrow_downward</v-icon>
通过使用Vuetify,您基本上将不再需要使用class="icon_name"
语法。
编辑:图标参考-Material Design和Font Awesome
答案 5 :(得分:1)
阅读最新发布的文档,并将以下代码包含在index.html中
<link href="https://cdn.jsdelivr.net/npm/@mdi/font@4.x/css/materialdesignicons.min.css" rel="stylesheet">
答案 6 :(得分:1)
您可以导入所有必要的样式
app.scss
@import "https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900";
@import "https://cdn.jsdelivr.net/npm/@mdi/font@latest/css/materialdesignicons.min.css";
@import "https://fonts.googleapis.com/css?family=Material+Icons";
@import '~vuetify/dist/vuetify.css';
答案 7 :(得分:1)
@Hasnat Safder的solution对我有用,但是main.js中的顺序很重要:
import 'material-design-icons-iconfont/dist/material-design-icons.css';
import vuetify from './plugins/vuetify';
答案 8 :(得分:0)
毛线方式(类似于Hasnat的响应):
yarn add material-design-icons-iconfont
并这样导入vuetify.js文件(如果不存在,则导入main.js):
import 'material-design-icons-iconfont/dist/material-design-icons.css';
答案 9 :(得分:0)
为我工作:
@BeforeAll
,然后将其放入plugins / vuetify.js中:
@BeforeAll
使用“ vuetify”:“ ^ 2.3.19”,“ vue”:“ ^ 2.6.12”,
答案 10 :(得分:0)
$ yarn add @mdi/font -D
// 或 $ npm install @mdi/font -D
// src/plugins/vuetify.js
import '@mdi/font/css/materialdesignicons.css' // 确保你使用的是 css-loader 从'vue'导入Vue 从 'vuetify/lib' 导入 Vuetify
Vue.use(Vuetify)
导出默认的新 Vuetify({ 图标:{ iconfont: 'mdi', // 默认 - 仅用于显示目的 }, })