Vuetify使用本地图标资源

@vue/cli 4.2.3脚手架创建的Vuetify项目默认使用的是国外CDN上的RobotoMaterial Design Icons资源,速度很慢甚至会加载失败,下面记录一下如何把这两个用本地资源代替

修改/public/index.html

删除下面两行引用

<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@mdi/font@latest/css/materialdesignicons.min.css">

安装相应包

yarn add @mdi/font -D
# roboto字体其实不要也行,就英文的一套字体而已
yarn add typeface-roboto -D

修改plugins/vuetify.js

import Vue from 'vue';
import Vuetify from 'vuetify/lib';
import zhHans from 'vuetify/es5/locale/zh-Hans'   // 引入中文语言包
import 'typeface-roboto/index.css'    // 引入本地的Roboto字体资源
import '@mdi/font/css/materialdesignicons.css'  // 引入本地的Material Design Icons资源

Vue.use(Vuetify);

export default new Vuetify({
  lang:{
    locales: {zhHans},
    current: 'zhHans'
  },
  icons:{
    iconfont: 'mdi',	// 设置使用本地的icon资源
  }
});

模板中使用

<template>
  <div class="home">
    <v-icon>mdi-account-circle</v-icon>
  </div>
</template>

<script>

export default {
}
</script>

相关资源

完整的mdi图标对应代码可以在官网查看,代码都是mdi-xxx这样的格式:

https://cdn.materialdesignicons.com/4.9.95/

模板中调用应当是这样

<v-icon>mdi-account</v-icon>

更多实例

通过修改<v-icon>的标签属性可以修改图标大小,颜色
在这里插入图片描述

<template>
  <div class="home">
    <v-icon>mdi-account</v-icon>
    <v-icon large>mdi-account</v-icon>
    <v-icon x-large>mdi-account</v-icon>
    <v-icon size="120px">mdi-account</v-icon>
    <v-icon size="120px" color="#4fbf8d">mdi-account</v-icon>
  </div>
</template>

<script>

export default {
}
</script>

  • 6
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DexterLien

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值