なぜ必要か
Nuxt.jsでは/pagesディレクトリ内にvueファイルを作成すると自動でパスを作成してくれる機能がある。
しかし、pages/user/settingsみたいにuserパスを使わずsettingsパスのみを使いたい場合にもuserパスが使われてしまうので、使用できないようにする。
やり方
使用したくないパスのファイルに以下を記述
/pages/user.vue
<script>
export default {
// 追加
validate ({ route }) {
return route.name !== 'user'
}
}
</script>
解説
validate() はパスのアクセスを管理するメソッド。このメソッドによって使用したくないパスの管理ができる。
route.name !== 'user' はルート名が’user’ではない時にパスを通す。
これで/userにアクセスしても404エラーが表示される