Nuxt2でAwesomeFontを使いたいだけ。
https://fontawesome.com/docs/web/use-with/vue/use-with#nuxt
これに従った。
Web開発始めたばっかりだと、全ステップで細かくつまづくのなんなんだろう。
0.1歩づつしか進めない。たまに後退してる。
エラー
Unknown custom element: <font-awesome-icon> - did you register the component correctly? For recursive components, make sure to provide the "name" option.
解決法
import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome'
Vue.component('fa', FontAwesomeIcon);
これを.tsか.jsファイルのどっかで呼ぶ。
font-awesome-iconって長くて使いにくいので、faにした。
そしてこんなふうに使う。
<fa icon="fa-solid fa-user-secret" />
エラー
Could not find one or more icon(s) {prefix: 'fas', iconName: 'user-secret'} {}
解決法
import { library } from '@fortawesome/fontawesome-svg-core';
import { faUserSecret } from '@fortawesome/free-solid-svg-icons';
import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome'; library.add(faUserSecret)
さっきの解決法に付け足し。
でもこれだとfaUserSecretしか使えない。。!!なんで!!全部使わせてくれ!!
解決法2
import { fas } from '@fortawesome/free-solid-svg-icons';
import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome';
library.add(fas)
Vue.component('fa', FontAwesomeIcon);
これで全部使える!!!これだけでいいじゃん!
一個づついちいち追加したい人はいるのか?
完了!!
と思ったらできてなかった。
<fa icon="fa-solid fa-user-secret" />
は使えるけど
<fa icon="fa-solid arrow-up" />
は使えない。
解決法
<fa icon="fa-solid fa-arrow-up" />
アイコン名の前にfa-をつけなきゃいけない。
今度こそ完了!!
後日追記(本当の解決法)
configファイルにcssとpluginsの内容追加すればいいだけだった。
ちゃんと書いてあった。
よく読もう。
// Modify nuxt.config.js adding to the `css` and `plugins` sections.
css: [
'@fortawesome/fontawesome-svg-core/styles.css'
]
plugins: [
'~/plugins/fontawesome.js'
]
この記事が気に入ったらサポートをしてみませんか?