Svelte入門:SvelteKitでの移行 -Vol.2-

スポンサーリンク
Svelte入門:SvelteKitでの移行 -Vol.2- 未分類
Svelte入門:SvelteKitでの移行 -Vol.2-
この記事は約2分で読めます。
よっしー
よっしー

こんにちは。よっしーです(^^)

今日は、SvelteKitでの移行について解説しています。

スポンサーリンク

背景

SvelteKitでの移行について調査する機会がありましたので、その時の内容を備忘として記事に残しました。

リダイレクトとエラーは発生しない


以前は、error(...)redirect(...)から返される値を自分でthrowする必要がありました。SvelteKit 2ではこれは不要となり、関数を呼び出すだけで十分です。

import { error } from '@sveltejs/kit'

// 古い方法
throw error(500, 'something went wrong');
// 新しい方法
error(500, 'something went wrong');

svelte-migrateがこれらの変更を自動的に行います。

エラーやリダイレクトがtry {...}ブロック内でスローされる場合(ヒント:これは避けるべき!)、@sveltejs/kitからインポートしたisHttpErrorisRedirectを使用して、予期しないエラーと区別することができます。

解説

  1. 主な変更点
  • error()redirect()関数の使用方法が簡略化
  • throwキーワードが不要に
  • 関数呼び出しだけで機能する
  1. 移行方法
  • svelte-migrateツールで自動的に変更可能
  • 古いコードからthrowキーワードを削除
  • 関数呼び出しの形式に統一
  1. エラー判別方法
  • isHttpError:HTTPエラーの判別
  • isRedirect:リダイレクトの判別
  • try-catchブロック内での使用は推奨されない
  1. 注意点
  • try-catchブロック内でのエラー処理は避けるべき
  • 必要な場合はisHttpErrorisRedirectを使用
  • より簡潔で明確なエラーハンドリングを心がける

この変更により、コードがよりシンプルで理解しやすくなります。

おわりに

今日は、 SvelteKitでの移行について解説しました。

よっしー
よっしー

何か質問や相談があれば、コメントをお願いします。また、エンジニア案件の相談にも随時対応していますので、お気軽にお問い合わせください。

それでは、また明日お会いしましょう(^^)

コメント

タイトルとURLをコピーしました