MVP 패턴을 사용하여 GWT 앱을 개발하려고합니다. 지금까지 한 가지 특별한 경우를 제외하고는 URL을 변경하지 않는 행동 (브라우저 기록 변경 없음)브라우저 기록 변경없이 GWT/MVP 작업에 대한 입력을 찾고
GWT MVP 패턴에서 이벤트는 발표자로부터 전송되고 앱 컨트롤러는 이벤트를 캐치하고 브라우저 기록을 업데이트합니다. 히스토리가 변경되면보기가 갱신됩니다.
이 ** 역사의 변화 MVP는 ** (잘 작동)
Current URL is /list
User clicks on contactdelete button.
Fire DeleteContactAction event.
App controller catches, change history to 'delete'
onValueChange is called
if (token.equals("delete"))
delete contact screen, then delete contact
Fire ContactDeletedEvent
app controller catches and change the history to list
onValueChange is called: contact list refreshes
대화 상자
GWT MVP 패턴 w 역사는 변화/O를
** 호 ** - 나는 대화 상자를 사용하여 나는 브라우저 기록을 변경하지 않기 때문에 문제는 여기에 있습니다 :
Current URL is /list
User clicks on contactdelete button.
Contact is deleted
Fire ContactDeletedEvent.
App controller catches, change history to 'list'
**onValueChange is NOT called** because url is already /list and there is no change
# problem: contact list does not refresh
는 질문 : 사람이 MVP의 맥락에서이를 구현하는 패턴을 알고 있나요?
도움/아이디어를 높이 평가.
여기에서 자습서의 예제를 사용하고 있습니다. http://code.google.com/webtoolkit/doc/latest/tutorial/mvp-architecture.html 이 예제에서 이벤트는 변경되는 appcontroller에 의해 수집됩니다 브라우저 히스토리가 처리를 트리거합니다. 나는 앱 컨트롤러에서 이벤트의 중앙 집중화를 유지하려고하지만 *이 이벤트는 다음과 같이 처리됩니다. *이 변경 사항은 기록 변경과 함께 변경됩니다. 무슨 뜻인지 알아보세요. – user198313
그래, AppController가 이벤트를 수집하고 앱의 다른 부분이 듣는 이벤트 변경 사항을 트리거하는 대신, 앱의 다른 부분에서 관련 이벤트를 수신하도록 할 수 있습니다. GWT MVP 개발을위한 또 다른 좋은 프레임 워크는 gwt-presenter이며,이 예제 프레임 워크와 달리 적극적으로 개발됩니다. http://code.google.com/p/gwt-presenter/ –