Vue CLIのtitleタグやmetaタグの設定方法

Vue CLIでのfaviconの変更方法は過去に記事にしましたが、titleタグについて触れていませんでした。
Vue CLIはデフォルトだとプロジェクト名が全ページ共通でついてしまいます。
今回はtitleタグやmetaタグの設定方法についてまとめておきます。
Vue Routerを使用して各記事に設定する
Vue Routerを使っている場合はroutesに新たにタイトルとディスクリプションの情報を追加します。
const routes = [
{
path: '/',
name: 'Home',
component: Home,
meta: { title: 'ページタイトル', desc: 'ディスクリプションを記述' }
}
]あとはこの情報を引っ張ってきて、App.vueでページが変更するたびにセットするように処理を追加します。
export default {
methods : {
setMeta(route){
// タイトルを設定
if(route.meta.title){
let setTitle = route.meta.title;
document.title = setTitle;
}
// ディスクリプションを設定
if(route.meta.desc){
let setDesc = route.meta.desc;
document.querySelector("meta[name='description']").setAttribute('content', setDesc)
}
}
},
mounted(){
let route = this.$route;
this.setMeta(route);
},
watch: {
'$route' (route, from) {
this.setMeta(route);
}
}
}やっていることはsetMetaという先ほど追加したタイトルとディスクリプションを取ってきてセットするメソッドを作り、mountedで初回、watchの'$route' (routeInstance, from)でVue Routerを使って遷移した時に発火させているだけです。
あとはpublic/index.htmlを開いて、下記のmetaタグを追加します。
<meta name="description"><title>タグはデフォルトであるのですが、<meta name="description">のタグはないため、用意しておく必要があるからです。


選択テキストをHTMLタグですぐ囲めるようになるVisual Studio Code拡張機能「htmltagwrap」
CSSのz-indexの確認や管理を便利にする方法
「とりあえず無料版!」ではなく、機能を知った上で判断したいMAMPとMAMP PROの比較
Visual Studio CodeでMovable TypeのMTMLファイルを開く拡張機能「Movable Type Markup Language Syntax」
アイコンフォントをPCにインストールしている場合は、コーディング後の確認に注意
ウェブ上でLaTeXで数式をキレイにプレビューするJavaScriptライブラリ「MathJax」
ターミナルでGitを使う時に最低限覚えておきたいコマンド
iOSシミュレーターを使ってWebサイトを開発者ツールを見ながら実機表示で開発する方法
SourceTreeで環境設定の「カスタムアクション」「アップデート」「高度な設定」が選択できない
AirPodsで片耳を外しても再生が止まらないようにする方法
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
Apple Watchの余計な通知を来ないようにして快適にする方法
WordPressの自動バックグラウンド更新を無効にする方法とその注意点
Dashの時間と日付のフォーマット設定方法
MacのターミナルアプリはiTerm2で決まり!!オススメの設定と基本的な機能まとめ
.DS_Storeなどの不要なメタデータファイルを自動で削除する「BlueHarvest」
Mac版Excelで「一部の内容に問題が見つかりました。可能な限り内容を回復しますか?」の原因と解決方法
テキストエディタ.app起動時に表示されるダイアログボックスを非表示にする方法
Google Maps APIでピンのアクティブ時にピン画像を変える方法
Visual Studio CodeでIllustratorのスクリプトを書く時に便利な拡張機能「ExtendScript Debugger」
横幅が広がったときの挙動が変わる!CSS Gridの「auto-fill」と「auto-fit」の違い