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でMovable TypeのMTMLファイルを開く拡張機能「Movable Type Markup Language Syntax」
.gitignoreに含めた方がいいファイル・フォルダが一覧でまとまっている「gitignore.io」
webpackでTop-Level Awaitを使用して、一番上位でもawaitを使えるようにする方法
Dart Sassでファイルを分割して管理する方法|Dart Sass入門
WordPressの自動バックグラウンド更新を無効にする方法とその注意点
ダミーとして使うURLは適当に入力せず、決まったものを使うようにしよう
Mac向けのミニマルでお洒落なデザインのGitクライアント「Gitfox」
常時SSL化の設定をしたのに「保護された通信」が表示されない時はパスにHTTPが残っているのかも?
Android実機で表示しているサイトを、Chrome開発者ツールで開いて検証する方法
Gitで1行しか変更していないはずのに全行変更した判定になってしまう
iTerm2で「Use System Window Restoration Setting」を設定しているとアラートが表示されて機能しない
Google Chromeのサイト内検索(カスタム検索)機能を別のプロファイルに移行する方法
iPadで入力モードを切り替えずに数字や記号をすばやく入力する方法
iPhoneやiPadでYouTubeの再生速度を3倍速や4倍速にする方法
Keynoteで有効にしているはずのフォントが表示されない現象
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
AirPodsで片耳を外しても再生が止まらないようにする方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
1つのノートアプリにすべて集約するのをやめた理由|2025年時点のノートアプリの使い分け
Notionログイン時の「マジックリンク」「ログインコード」をやめて普通のパスワードを使う
AlfredでNotion内の検索ができるようになるワークフロー「Notion Search」
Macでアプリごとに音量を調節できるアプリ「Background Music」
Macのターミナルでパスワード付きのZIPファイルを作成する方法
MacBook Proでディスプレイのサイズ調整をして作業スペースを広げる
SteerMouseの「自動移動」機能で保存ダイアログが表示されたら自動でデフォルトボタンへカーソルを移動させる
iPhoneでタッチが一切効かなくなった場合に強制再起動する方法