GWT/GIN으로 첫 걸음을 내딛려고합니다.GWT - binding activityMapper가 작동하지 않습니다.
Google에서 hellomvp 예제를 다운로드하고에 따라 gin을 시작하십시오.
내 문제는 HelloGinModule - 클래스의 구성-방법이 라인에 관한 것입니다 : 내 관점에서
bind(ActivityMapper.class).to(AppActivityMapper.class).in(Singleton.class);
는 활성 ActityManager으로 내 수업 "AppActivityMapper"를 결합한다. 사실 클래스 생성자 (또는 클래스의 모든 메서드)는 호출되지 않으므로 발생 된 이벤트는 발견되지 않습니다.
는 클래스 AppActivityMapper는 다음과 같습니다
내보기 클래스에서이 코드는 링크를 클릭 한 후 호출 할 내 예에서public class AppActivityMapper implements ActivityMapper {
Provider<HelloActivity> helloActivityProvider;
Provider<GoodbyeActivity> goodbyeActivityProvider;
@Inject
public AppActivityMapper(final Provider<HelloActivity> helloActivityProvider, final Provider<GoodbyeActivity> goodbyeActivityProvider) {
this.helloActivityProvider = helloActivityProvider;
this.goodbyeActivityProvider = goodbyeActivityProvider;
}
@Override
public Activity getActivity(Place place) {
if (place instanceof HelloPlace) {
return helloActivityProvider.get();
} else if (place instanceof GoodbyePlace) {
return goodbyeActivityProvider.get();
}
return null;
}
}
:
presenter.goTo(new GoodbyePlace(name));
이벤트가 이벤트에 해고 버스. 그러나 아무 일도 일어나지 않습니다. 사전
오케이, 그게 핵심이라고 생각합니다. ActivityMapper와 ActivityManager의 차이점을 얻지 못했습니다. 활동 관리자를 정의하는 가장 좋은 방법은 무엇입니까? – Lodger
@Lodger @Lodger 내 게시물을 업데이트했습니다. – jusio
Gin/Guice를 사용하는 아이디어와 더 밀접한 또 다른 옵션은 ActivityManager 모듈에서 공급자 또는 @Provides 메서드를 정의하는 것입니다. 샘플 gwt/gin 프로젝트의 한 예제 https://github.com/niloc132/tvguide-sample-parent/blob/master/tvguide-client/src/main/java/com/acme/gwt/client/ioc/ TvGuideClientModule.java # L98 –