Nuxt3パブリックベータ版時点の情報となります。
Nxut3で動的ルーティングを生成するには
[]
で囲まれたページファイルを作成することで動的ルーティングが生成されます。
pages
├── index.vue
├── products
│ ├── [id].vue <= 動的ルーティングのコンテンツが表示される
│ └── index.vue
ファイル名とキーは一致する
ここのid
は任意の名前でOKですが、パラメーターのキーとなるので意味がわかりやすい名前にしましょう。
[id].vue の場合 =>params.id
でパラメーターを取得する[name].vue の場合 =>params.name
でパラメーターを取得する
touchコマンドはシングルクォーテーションで囲む
ちなみにファイルを作成するtouch
コマンドは[]
(括弧)を認識しません。
% touch pages/[id].vue
zsh: no matches found: pages/[id].vue
シングルクォーテーションで囲むことでエラーを回避できます。
% touch pages/'[id].vue'
Nuxt2の動的ルーティング
Nuxt2までは、先頭に_
がついたページファイルを作成していました。
pages
├── index.vue
├── products
│ ├── _id.vue <= 動的ルーティングのコンテンツが表示される
│ └── index.vue
Nxut3では先頭パス固定の動的ルートも生成できる
_
から解放されたことで、こんな動的ルーティングも生成できるようです。
ページファイル
-| pages/
---| index.vue
---| users-[group]/
-----| [id].vue
生成されるパス
/users-admins/123
パラメーターの受け取り
<template>
{{ $route.params.group }}
{{ $route.params.id }}
</template>
← Prev
Next →
あなたの力になれること
私自身が独学でプログラミングを勉強してきたので、一人で学び続ける苦しみは痛いほど分かります。そこで、当時の私がこんなのあったら良いのにな、と思っていたサービスを立ち上げました。周りに質問できる人がいない、答えの調べ方が分からない、ここを聞きたいだけなのにスクールは高額すぎる。そんな方に向けた単発・短期間メンターサービスを行っています。
独学プログラマのサービス
Nuxt3の投稿
1
Nuxt3 Betaをブラウザに立ち上げる【Nuxt3 × VSCodeセットアップ】
2
Nuxt3のsetup内ではthisの代わりにuseNuxtApp()を使用する
3
Nuxt3でレイアウトファイルを使用するには<NuxtLayout>を使う
4
Nuxt3で動的ルーティングを生成するには[id].vueを作成する
5
Nuxt3のmiddlewareの登録と呼び出し&Beta版のバグとその回避策
6
Nuxt3betaのServerMiddlewareで特定ルートのみ発火させる方法は動かない
7
importする自作プラグインはserver/apiには置けない
8
Nuxt3でinjectみたいに自作クラスを登録するにはprovideを使う
9
Nuxt3のuseFetch()で2回目以降のapiがスルーされる問題
1
Nuxt3を使ってShopifyの商品一覧を取得しよう
2
Nuxt3をNetlifyCLIとnetlify.tomlを使ってNetlifyにデプロイしよう
3
Nuxt3のserver/apiとuseFetchを使用してShopifyへサーバーAPIリクエストを実装
4
Nuxt3でShopifyのCheckoutIDが付与されたURLにリダレクト処理を行う
5
【Nuxt3×Shopify】Piniaを導入した商品取得のベストプラクティス