← 戻る

Svelte 5のbind:にはletが必須


Svelte 5でbind:ディレクティブを使う場合、バインド先の変数はletで宣言する必要がある。constだとコンパイルエラーになる。

<script>
  // NG: constだとbind:できない
  const name = $state('');

  // OK: letで宣言
  let name = $state('');
</script>

<input bind:value={name} />

Svelte 4ではexport letだったが、Svelte 5では$props()に変わったため、バインディング周りの挙動も変わっている。