Vueでファビコンを設置しようとして、なんか上手くファビコンが表示されないなーと思ったら、衝撃の事実が発覚しました。。
その時の対処法の記事です。
どういう状況か?
Vue + Typescriptのプロジェクトで、ファビコンを設置したい
↓
public/index.html
を編集する(head
タグ内に以下を追加する)
<link rel="icon" type="image/x-icon" href="<%= BASE_URL %>favicon.ico">
↓
ビルド
↓
ファビコンが表示されない
↓
デベロッパーツールで見てみると、以下のようになっている・・・!?
<!--[if IE]><link rel="icon" href="favicon.png"><![endif]-->
解決法
vue.config.js
に以下を設定すればOK!
module.exports = {
pwa: {
iconPaths: {
favicon32: 'favicon.ico',
}
}
};
なお、ファビコン自体は、public/favicon.ico
に配置しました。
まとめ
なぜファビコンのlink
タグだけ条件付きコメントになったのか、とても興味深いです。