Nuxt.jsでのページ遷移設定方法(Vue Routerやnuxt-link)|Nuxt.jsの基本

Nuxt.jsでもVue Routerを使っているので、Vue CLIと同様にVur Routerの機能が使えますが、それをさらに拡張したnuxt-linkが使えます。
template内の遷移タグ
Vue Routerの<router-link>はもちろん使えます。
<router-link :to="/">トップページへ遷移</router-link>しかし、せっかくNuxt.jsを使うのであれば<nuxt-link>を使った方が良さそうです。
基本的な使い方は<router-link>と同じです。
<nuxt-link to="/">トップページへ遷移</nuxt-link>もしくは<NuxtLink>でもできるみたいですが、基本小文字の方がHTMLが統一されるので、<nuxt-link>の方がオススメです。
<NuxtLink to="/">トップページへ遷移</NuxtLink>どちらもブラウザで生成されるのは<a>タグになります。
nuxt-linkのメリット
具体的な<nuxt-link>を使うメリットとしては、「ブラウザの表示領域に<nuxt-link>があると、その先のページを自動的に先読みしてくれる」ことみたいです。
Nuxt は自動的にスマートプリフェッチングをサポートしています。
つまり、ビューポートまたはスクロール時にリンクが表示されたことを検知し、そしてユーザーがリンクをクリックしたときにすぐに使えるよう、ページにおいて JavaScript をプリフェッチします。Nuxt はブラウザがビジー状態でないときにのみリソースをロードし、接続がオフラインの場合や 2g の接続しかできない場合はプリフェッチをスキップします。
そんなことまでしてくれるんですね。とりあえず使っといて損はなさそうです。
ちなみに、オフにしたい場合は「no-prefetch」属性を付けるとオフになります。
script内でページ遷移させたい場合
methods内などで、なにか処理をしてからページ遷移させたい場合は「this.$router.push()」を使用します。
<template>
<a @click="onClickButton">トップページへ遷移</a>
</template>
<script>
export default {
methods: {
onClickButton(){
this.$router.push('/');
}
}
}
</script>戻る・進むを実装する
「戻る」ボタンを実装して、ページを1つ前に戻したい場合は下記コードを使用します。
this.$router.go(-1);逆に「進む」ボタンを実装して、ページを1つ進めたい場合は下記コードです。
this.$router.go(1);
ウェブサイトをダークモードに対応するときに気をつけること
Visual Studio Codeで連番を入力する拡張機能「vscode-input-sequence」
スマホやPCにプッシュ通知をしてくれる「Push7」をブログに追加する方法
SourceTreeのカスタムアクションを使って差分ファイルだけをまとめる方法
Emmetで複数のタグを一括展開して、コーディングスピードをさらに上げる方法
pointer-eventsプロパティでクリックイベントを無効化にする|気になるCSSプロパティ
Nuxt.jsの「layouts」を使用してレイアウトの共通化を行う方法|Nuxt.jsの基本
JavaScriptで日付をコピーして計算すると、コピー元の日付も変わってしまう場合の対処法
Google Maps APIでマップの見た目をカスタマイズする方法
iTerm2で「Use System Window Restoration Setting」を設定しているとアラートが表示されて機能しない
Google Chromeのサイト内検索(カスタム検索)機能を別のプロファイルに移行する方法
iPadで入力モードを切り替えずに数字や記号をすばやく入力する方法
iPhoneやiPadでYouTubeの再生速度を3倍速や4倍速にする方法
Keynoteで有効にしているはずのフォントが表示されない現象
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
AirPodsで片耳を外しても再生が止まらないようにする方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
macOSのコマンドパレット比較!SpotlightとAlfred、Raycastどれを使えばいい?
1つのノートアプリにすべて集約するのをやめた理由|2025年時点のノートアプリの使い分け
Notionログイン時の「マジックリンク」「ログインコード」をやめて普通のパスワードを使う
AlfredでNotion内の検索ができるようになるワークフロー「Notion Search」
Gitで1行しか変更していないはずのに全行変更した判定になってしまう
Macでアプリごとに音量を調節できるアプリ「Background Music」
Macのターミナルでパスワード付きのZIPファイルを作成する方法
MacBook Proでディスプレイのサイズ調整をして作業スペースを広げる
SteerMouseの「自動移動」機能で保存ダイアログが表示されたら自動でデフォルトボタンへカーソルを移動させる
iPhoneでタッチが一切効かなくなった場合に強制再起動する方法