오늘 심포니에서 이벤트 챕터를 보고 직접 실험도 해봤는데 잘 이해가 안되는 부분이 하나 있습니다.
모든 이벤트를 관리하기 위해 먼저 Eents 열거형 클래스를 정의했습니다
HomepageBundle
에 이벤트가 정의되어 있습니다. 으아악그런 다음 FileBundle
에 리스너가 정의됩니다. 으아악service.xml에 서비스를 등록하세요
으아악마침내 HomepageBundle의 컨트롤러에서 이벤트를 트리거했습니다
으아악먼저 http://localhost/fm/web/app_dev.php/home/index
를 통해 접속합니다.
"내가 실행했습니다" 로그를 올바르게 인쇄할 수 있습니다
이벤트가 성공적으로 트리거되고 실행되었음을 나타내는 모든 것이 괜찮은 것 같습니다
이제 디버그 바를 클릭하면 이벤트 항목이 아래와 같습니다.
home.homepage_visit이 Not Called Listeners에 있는데 왜 분명히 실행되는지 이해가 안 가나요?
曾经蜡笔没有小新2017-05-16 16:46:46
심포니 2의 특정 버전은 무엇입니까?
로그를 작성했다면 이벤트 관련 코드가 유효하다는 의미입니다.
프로파일러(디버그 바)에 표시되는 정보는 데이터 수집기를 통해 수집됩니다. 리스너에 대한 호출이 녹음되지 않는 이유는 자세한 내용을 알아야 xdebug 간의 대응을 확인하는 것이 좋습니다. 토큰과 프로파일러 정보를 자세히 설명합니다.
또한 종속성이 너무 광범위하므로 컨테이너를 이벤트에 직접 삽입하지 마세요.