Livewire クラスメソッドで他のコンポーネントのプロパティを更新するには?emitSet
Form間で値をコピーするサンプルプログラムを作成してみます。 Laravel と Livewire をインストールして、emitSet で他コンポーネントのプロパティを更新する手順。 プロジェクト名(emitSet)を決めて以下のコマンドを実行します。 インストール時にプロジェクト名のディレクトリが作成されます。 インストールの最後に sudo でパスワードの入力を求められます。 ↓下のメッセージが表示されてインストールは終わります。 sail のエイリアスを定義します。 Laravel のインストールはここまで。 「sail up」でコンテナを起動します。 ララベルのトップディレクトリで、Livewireパッケージ をインストールします。 次のコマンドを実行して、formコンポーネント を生成します。 次の 2つ のファイルが生成されます。 ※因みに、renderメソッド を定義しなくても livewire.formは呼び出されます。 生成された formコンポーネント のクラスとビューを次のように置き換えます。 app/Http/Livewire/Form.php ↑上のポイントは、copyクラスメソッド 内で $data[$this->to] で 他のコンポーネント の値を書き換えます。過去は、書き換え後に emitSetメソッド を呼ぶ必要がありましたが、現在は emitSet する必要はありません。 resources/views/livewire/form.blade.php LiveRelationトレイト を作成します。 public/liveext.js を作成します。 resources/views/index.blade.php ファイル を作成します。 routes/web.php にルートを追加します。 ブラウザで確認します。 各Copyボタン を押すことで、Form間で値のコピーを行うことができます。
Livewire クラスメソッドで他のコンポーネントのプロパティを更新するには?emitSet Read More »