VueでFontAwesomeのアイコンを表示する方法(Vue.js)
はじめに
Vue.jsを用いてポートフォリオサイトを制作するのに、Vue-cliを利用したのですが、コンポーネントでFontAwesomeの呼び出し方法がわからず苦戦しました。
そこでの経験を踏まえて、Twitterアイコン等を表示させるために使うFontAwesomeのVueでの導入方法と記述方法について書いていきます。
FontAwesomeを導入する
ルートディレクトリに移動する
> cd my-project
インストールする
> npm install --save @fortawesome/fontawesome-svg-core
> npm install --save @fortawesome/free-solid-svg-icons
> npm install --save @fortawesome/vue-fontawesome
さらに多くのアイコン(twitterアイコンなど)を使いたい場合はこちらも追加でインストールする
> npm install --save @fortawesome/free-brands-svg-icons
> npm install --save @fortawesome/free-regular-svg-icons
インストール完了!
コーディング方法について
main.js
に以下のようにコードを追加する
import Vue from 'vue'
import App from './App.vue'
//ここから
import { library } from '@fortawesome/fontawesome-svg-core'
import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome'
import { fas } from '@fortawesome/free-solid-svg-icons'
//追加でインストールした場合は下の2行も
import { far } from '@fortawesome/free-regular-svg-icons'
import { fab } from '@fortawesome/free-brands-svg-icons'
library.add(fas, far, fab)
Vue.component('font-awesome-icon', FontAwesomeIcon)
//ここまで
Vue.config.productionTip = false
new Vue({
render: h => h(App)
}).$mount('#app')
あとは表示したい場所でアイコンを呼び出すだけです
アイコンを呼び出す
今回はAboutページでアイコンを呼び出してみます。
<template>
<div class="about">
<h1>This is an about page</h1>
<!--Solidアイコン-->
<font-awesome-icon :icon="['fas', 'envelope']"/>
<!--Solidアイコンの省略記法-->
<font-awesome-icon icon="envelope" />
<!--Regularアイコン-->
<font-awesome-icon :icon="['far', 'envelope']"/>
<!--Brandsアイコン-->
<font-awesome-icon :icon="['fab', 'twitter']"/>
</div>
</template>
呼び出しに成功しているか確認します
ちゃんと表示されています!
まとめ
自分はTwitterアイコンの呼び出しをを省略記法で記述していたためうまく表示されませんでした。Solidアイコンのみ省略記法で呼び出すことができ、そのほかのRegularやBrandsアイコンについてはきちんと記述する必要があるようです。
以上、VueでFontAwesomeのアイコンを表示する方法でした。読みにくい点や異なる点などございましたら、ご指摘お願いします。
参考
Font awesome を Vue.js で使ってみよう
https://qiita.com/kurararara/items/d76776a7dc2d763a068bVue CLIでFont AwesomeのTwitterアイコンを追加する方法
https://zarigani-design-office.com/blog/vue-cli-twitter/
Author And Source
この問題について(VueでFontAwesomeのアイコンを表示する方法(Vue.js)), 我々は、より多くの情報をここで見つけました https://qiita.com/m4oyu/items/9037d4341b0f5ec97cf1著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .