JSConf JP

自作して理解する、ディレクティブとビルドシステムの役割

LTTrack BJapanese

最近、"use server" や "use server" など、ディレクティブが活用されるシーンが増えています。

これらの中には、フレームワークのビルドシステムが解釈し、ビルド結果に影響を与えるものがあります。

例えばReact Server Componentsにおける "use server" を使うと、実装上での単なる関数呼び出しが、「関数本体の処理をバックエンドに委譲する仕組み」に変化します。

言い換えるとディレクティブは、単一コードベースを、関数単位で異なるランタイムで実行することを可能にするシステムと言えます。

このLTでは、"use lambda"という自作のディレクティブを定義し、これを処理するRolldownのプラグインを作成してみます。(バックエンドで利用する前提で、サーバー処理の一部分を、AWS Lambda のような非同期実行に切り出すイメージです。)

このプラグインを例として、ディレクティブがどのようにビルドシステムと連携するのかを説明します。

関連: https://www.m3tech.blog/entry/2025/07/22/170104