이렇게하는 방법은 여러 가지가 있습니다.HMVC에서 모델 변경 이벤트를 여러보기로 보내는 방법은 무엇입니까?
모델에서 컨트롤러 하나만 참조하십시오. 모델은이 컨트롤러에 이벤트를 보내고 다른 컨트롤러는 계층 구조를 통해이를 알게되고 뷰로 전달합니다.
관심있는 컨트롤러를 모두 모델에있는 리스너 (모델에는 리스너 목록이 있음)로 설정합니다. 보기는 컨트롤러를 통해 변경 사항을 알게됩니다.
관심있는 모든 뷰가 모델의 리스너가되도록하십시오. (보기는 변경 사항을 직접 알게됩니다)
어떤 것이 적절하며 그 이유는 무엇입니까?
답변 해 주셔서 감사합니다. 모델에서보기로 메시지를 보내려면 한 세트의 컨트롤러가 있어야하고 뷰에서 모델로 메시지를 보내려면 다른 컨트롤러 세트가 있어야한다고 생각하는 이유는 무엇입니까 (두 번째 요점)? –
이 서로 다른 작업을하기 때문에 예 : 버튼은 이벤트를 생성하고 modelChangeController에 보냅니다.이 컨트롤러는 모델을 변경하기 위해 이벤트를 편집 할 수 있습니다. 모델 변경 및 변경 사항을 디스플레이 컨트롤러에 보내면이 컨트롤러는 그의 디스플레이에 맞는 이벤트를 변경할 수 있습니다. 디스플레이 (lable)에 변경 사항이 표시됩니다. 컨트롤러는 동일한 Object 일 수 있지만 두 개의 인터페이스를 구현해야합니다. 모델을 변경하기 위해 이벤트를 암송합니다. 하나는 디플레이 이벤트를 암송하여 디스플레이에 전송하는 것입니다. – Simulant