SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Remixを通じてWebを学ぶ

React Routerを元に誕生した「Remix」──ルーティングに関するAPIを解説!

Remixを通じてWebを学ぶ 第5回

  • X ポスト
  • このエントリーをはてなブックマークに追加

 RemixはReactでシングルページアプリケーションを構築する際に定番のルーティングライブラリである、React Routerを元にして生み出されたフレームワークです。そのため、画面の定義や遷移については現場で叩き上げられた実践的なAPIが揃っています。今回はRemixのルーティングに関するAPIを解説していきます。

  • X ポスト
  • このエントリーをはてなブックマークに追加

対象読者

  • Reactの基本を修めている方
  • 通信回線が弱いユーザーにも高速に表示できるサイトを作りたいエンジニア
  • WebブラウザとNode.jsという異なるランタイムをそれぞれキャッチアップするのが辛くなってきたエンジニア

前提環境

 筆者の検証環境は以下の通りです。

  • macOS Sonoma 14.0
  • Node.js 20.8.0
  • NPM 10.1.0
  • Remix 2.1.0

Webサイトとルーティング

 Webサイト制作やアプリケーションのフレームワークに欠かせない機能のひとつとして、ページ遷移に関する機能を挙げる方は多いと思います。この機能は、ページへの経路(=ルート、route)を定義することから、一般的にルーティングと呼ばれています。

 もちろん、ビジネス上の関心としてはページの中身であるコンテンツの比重が高くなるのですが、技術的な関心としてはルーティングは決して軽いものではありません。

 Remixの開発チームは、元々はReact Routerというルーティングライブラリを開発していました。シングルページアプリケーション上で利用するもので、サーバーとの通信を伴わずに、ブラウザ上で画面やURL表示を切り替える機能を持っていました。Reactによるシングルページアプリケーションの開発の現場においては、デファクトスタンダードと呼べる立場となり、現場で叩き上げられたライブラリとなっています。

 その魂を引き継いだRemixというフレームワークにとっても、ルーティングは重大な関心ごとで、内部のルーティング実装はReact Routerによって行われています。Remixの最大の特長は、そのルーティングと通信を高度に統合した開発体験を提供していることです。前回は通信について解説したので、今回はルーティングについて解説します。また、レイアウトと呼ばれる機能もルーティングと密接に関わっているため、併せて解説します。

 本連載を追いかけてくださっている方への注意点として、第2回第3回ではRemix v1のルーティング機能を前提として解説していましたが、今回から解説するRemix v2では、ファイルとフォルダの使い方が変わっています。最新版の create-remix を利用してプロジェクトを作成した場合は、本記事以降を参考にしてルーティング機能を利用してください。

次のページ
Remixでルートを定義する

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
Remixを通じてWebを学ぶ連載記事一覧

もっと読む

この記事の著者

WINGSプロジェクト 中川幸哉(ナカガワユキヤ)

WINGSプロジェクトについて>有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2018年11月時点での登録メンバは55名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書記事多数。 RSS X: @WingsPro_info(公式)、@WingsPro_info/wings(メンバーリスト) Facebook

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

山田 祥寛(ヤマダ ヨシヒロ)

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるReact実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/18573 2023/11/16 11:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング