generated at
SvelteKit
ディレクトリ構成
src/lib - 共通のライブラリコードを配置するディレクトリで、ここに置いたモジュールは $lib 経由で import 可能
src/lib/server - サーバでのみ利用したいコードを置くディレクトリで、 $lib/server 経由で import 可能
src/params - Routing向けのMatcherを配置するディレクトリ
src/routes - Routing用にページコンポーネントなどを配置するディレクトリ
src/app.html - テンプレート用のHTMLファイル
src/error.html - エラー用のテンプレートHTMLファイル
src/hooks.js - フック
src/service-worker.js - サービスワーカー
static/ - 静的なアセットを配置するディレクトリ
.svelte-kit/ - SvelteKitが生成したファイルが配置されるディレクトリ

Routing
src/routes 配下の構造を元に動作します
/help にアクセスした際は、 src/routes/help/+page.svelte がレンダリングされます
+page.svelte のレンダリング前に追加でデータの読み込みを行いたい際は、同一ディレクトリに +page.js を用意し、 load() export します
注意点として、 +page.js SSR時だけでなくCSR時も実行されます
もしSSR時のみ実行して欲しい場合は、 +page.js ではなく +page.server.js を用意します
そのため、環境変数の参照やDBへのアクセスなどが必要な際は、 +page.js の代わりに +page.server.js を用意する必要があります
動的なRouteを定義したいときは、 src/routes/books/[id] のようなディレクトリを用意します
+server.js GET POST などの関数を export しておくと、定義したエンドポイントにアクセスされた際に該当する関数が呼ばれます

Formアクション
+page.server.js actions export することで、対応するページの <form> から送信された POST リクエストを処理できます
デフォルトでは actions.default で定義した関数が呼ばれます (default action)
actions.default 以外の関数を呼びたい際は、 <form> action 属性に /<対象の関数名> の形式でクエリパラメータを付与する必要があります (named action)
例) actions.create を呼びたい場合は、 <form method="POST" action="?/create"> のように指定します
default actionnamed actionは併用不可です

エラーハンドリング
load() の実行中にエラーが発生すると、対象の +page(.server).js から最も近くにある +error.svelte がレンダリングされます
@sveltejs/kitでいくつかのヘルパーが提供されています
error() で作成したエラーを throw することで、指定されたステータスコードのレスポンスを返却できます
fail() を使うと、指定したステータスコードとともにデータを返却できます (返却されたデータはページコンポーネントからは form 経由で参照可能)
上記以外の方法でエラーが発生した際は、 handleError フックが実行されます

その他