LoginSignup
36
32

More than 3 years have passed since last update.

Nuxt.jsでFontAwesomeを使う方法。必要なアイコンだけインポートする!

Last updated at Posted at 2019-09-12

font awesome は非常に重たい!使うアイコンだけインポートする!

Font Awesomeは便利なのでよく使うのですが、そのまま読み込むと非常に重たくなってしまいます。
fa.jpg

パッケージは
nuxt-fontawesome というモジュールを使用

Nuxt FontAwesome5
https://www.npmjs.com/package/nuxt-fontawesome

yarn add nuxt-fontawesome @fortawesome/free-solid-svg-icons @fortawesome/fontawesome-svg-core @fortawesome/vue-fontawesome

nuxt.config.jsmodules に読み込み

nuxt.config.js
modules: [
  'nuxt-fontawesome',
],

/*
 ** FontAwesome
 */
 fontawesome: {
  component: 'fa'
},

そこで、軽くするため、必要なアイコンのみ読み込むようにします。

コンポーネントで読み込み

import { faMapMarkerAlt } from ‘@fortawesome/free-solid-svg-icons’

ちなみにこれは fontawesome ではなく、なぜか「 fortawesome 」なのでスペル注意!!

*.vue
<script>
 export default {
  computed: {
    faMapMarkerAlt() {
      return faMapMarkerAlt
    }
  }
</script>

テンプレートで使用するときのタグ

<fa :icon=“faMapMarkerAlt” />

以上です。

fa-after.jpg

同じプロジェクトでもFontAwesomeを最適化することで、かなり圧縮できました。

36
32
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
36
32