8 ポイント 投稿者 opnayn 2023-05-08 | 3件のコメント | WhatsAppで共有
  • App Router(Stable)
  • Turbopack(Beta)
    • 13で追加されたTurbopackがBeta段階に変更
    • 安定化とフィードバックのため、Vercel.com および Next.js を大規模運用している Vercel の顧客を対象にドッグフーディング(dogfooding)を実施
  • Server Actions(Alpha)
    • React エコシステムではフォームの状態管理について多くの意見がある
    • React の公式ドキュメントでは「非制御コンポーネント(uncontrolled components)」を推奨
    • Next.js サーバーで form に対するアクション関数を割り当てられる機能を追加(Server Actions)
    • サーバーコンポーネントで form の props のうち action を通じて関数を割り当て可能
    • この関数は 'use server'; を記述することでサーバー関数として動作
    • next パッケージを通じてページ遷移、キャッシュなどでサーバー関数を利用可能

3件のコメント

 
woohm402 2023-05-08

Reactの公式ドキュメントでは、制御コンポーネントは推奨されていないのでしょうか?

 
carrotfarm 2023-05-08

制御コンポーネントにするとスクリプトを使う必要があり、
そうするとクライアントコンポーネントとして作らなければならないのですが、その場合は
キャッシュなどの面で不利になります。

今回追加された Server Actions は、コンポーネント内の関数で
'use server' を宣言できるようになり、
mutation 時でもサーバーコンポーネントを維持したまま使えるようにしたもののようです。

今回の Next.js はスクリプトの使用を最小限に抑えていて、全体的な戦略などを見れば見るほど
Remix に似ていますね。

サーバーコードとクライアントコードが混ざっているのが
昔の PHP を思い出させます

 
opnayn 2023-05-08

翻訳が拙くて、不自然な意訳になってしまいました。原文は Server Actions の最初の段落です。

React のエコシステムでは、フォーム、フォームの状態管理、そしてデータのキャッシュと再検証をめぐって、多くのイノベーションやアイデアの探求が行われてきました。時が経つにつれて、React はこれらのパターンの一部について、より明確な立場を取るようになりました。たとえば、フォームの状態には「uncontrolled components」を推奨しています。