3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

watnowAdvent Calendar 2023

Day 13

Next.jsでuseRouterを使ってページ遷移する!

Posted at

はじめに

これからNext.jsでuseRouterというものを使ってページ遷移する方法について説明します。
とても簡単なので使う機会があればぜひ参考にしてください!

やり方

今回はボタンを押したらページ遷移するものを作ります。
まず、ページ遷移させるボタンが記述されているファイルの上にuseRouterをインポートしてください。

import { useRouter } from 'next/router'

次にコンポーネントの中でuseRouterを呼び出してrouterオブジェクトを作ります。

  const router = useRouter();

ボタンを押したときに実行される関数handleClickを作ります。

  const handleClick = () => {
    
  }

ここで、 router.push('URL') でそのURL先にページ遷移させることが出来るのでhandleClick関数の中にrouter.pushを挿入します。

  const handleClick = () => {
    router.push('/new_page')
  }

今回はnew_pageという新しいページに遷移させます。
最後にJSXのボタンタグの中にonClickを使用して、ボタンを押したときにhandleClick関数が呼び出されるようにすれば完成です!

全体の流れは次のようになります。

import { useRouter } from 'next/router'

export default function Home() {
  const router = useRouter();

  const handleClick = () => {
    router.push("/new_page")
  }

  return (
    <main>
      <h1>これは最初のページです</h1>
      <button onClick={handleClick}>新しいページに遷移します</button>
    </main>
  )
}

完成したページはこんな感じになりました。
スクリーンショット (89).png
ボタンを押すと新しいページに遷移します。
スクリーンショット (90).png

最後に

これでuseRouteを使ってページ遷移させることが出来ました!
簡単にできたので是非使ってください!

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?