質問 > 管理機能 > eventDispatcher->dispatchの処理内容について |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
kakkont |
投稿日時: 2020/3/2 15:53
対応状況: −−−
|
新米 登録日: 2020/1/28 居住地: 投稿: 5 |
eventDispatcher->dispatchの処理内容について 顧客登録のController(CustomerEditController.php)に
$this->eventDispatcher->dispatch(EccubeEvents::ADMIN_CUSTOMER_EDIT_INDEX_INITIALIZE, $event); という処理がありますが、どういった処理がされているのか もとい、何処に処理が書かれているのかご存じないでしょうか? |
umebius |
投稿日時: 2020/3/2 16:01
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: eventDispatcher->dispatchの処理内容について EccubeEvents::ADMIN_CUSTOMER_EDIT_INDEX_INITIALIZEというイベントを発生させています。
プラグインや本体に存在するイベントリスナーがこのタイミングで動作します。 簡単にいうと、この辺りのソースを直接さわらずにリスナー側で動作を拡張できるようにするための仕組みですね。 ---------- 公式ドキュメントのイベント処理についての記述 https://doc4.ec-cube.net/customize_symfony 下のブログはEventDispatcherについて書かれています。 https://tech.quartetcom.co.jp/2015/12/17/event-dispatcher/#:~:text=%E3%82%A4%E3%83%99%E3%83%B3%E3%83%88,%EF%BC%88%E3%81%97%E3%81%9F%EF%BC%89%E3%82%BF%E3%82%A4%E3%83%9F%E3%83%B3%E3%82%B0%E3%82%84%E4%BA%8B%E8%B1%A1%E3%80%82
|
kakkont |
投稿日時: 2020/3/2 16:56
対応状況: −−−
|
新米 登録日: 2020/1/28 居住地: 投稿: 5 |
Re: eventDispatcher->dispatchの処理内容について 早々のご回答ありがとうございます。
$this->eventDispatcher->dispatch(EccubeEvents::ADMIN_CUSTOMER_EDIT_INDEX_INITIALIZE, $event); 上記のタイミングで追加したい処理がある場合、 新規でリスナーを作成しaddListenerしておくと実行される、ということですね。 とても勉強になりました。ありがとうございます。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |