Nuxt.jsのプロジェクト作成時にBuefyを選択した場合、nuxt-buefyを使うようになります。
何も設定せずにMaterialDesignIcons(mdi)が使えるんですが、デフォルトのままではcssをCDNで読み込んでしまいます。
GithubのIssueで回避方法が紹介されているんですが、紹介した方はこのやり方に納得していないようです。
それにこのやり方だと、mdiのcssをコミットに含めてしまうため、あまり得策とは言えません。
という事で、コミットにcssを含めずCDNを使わない方法を~~考えてみました。~~紹介します。
IssueのやりとりでjtommyさんがmaterialDesignIconsをfalseにしろって言ってますね(^^;;
まずmdiのパッケージを追加します。
yarn add @mdi/font
nuxt.config.js(ts)のcssにmdiのパスを追加しnuxt-buefyのCDN読み込みを止めます。
css: [
	'@mdi/font/css/materialdesignicons.min.css'
],
modules: [
	[
		'nuxt-buefy',
		{
			materialDesignIcons: false
		}
	]
],
buefyのcssをカスタマイズしてる場合、そのcssより先にmdiのcssを読み込む必要があります。
css: [
	'@mdi/font/css/materialdesignicons.min.css',
	'~/assets/style.scss'
],
modules: [
	[
		'nuxt-buefy',
		{
			css: false,
			materialDesignIcons: false
		}
	]
],
これだけでパフォーマンスが若干向上するはずです。
それでは良いnuxt-buefyライフを🤘