Как токены GWT PlaceHistoryMapper преобразуются в реальные URL?
Если я реализую свой собственный PlaceHistoryMapper
:
public class MyAppPlaceHistoryMapper implements PlaceHistoryMapper {
@Override
public Place getPlace(String token) {
if(token.equals("home"))
return new HomePlace();
else
return new AboutUsPlace();
}
@Override
public String getToken(Place place) {
if(place instanceof HomePlace)
return "home";
else
return "about-us";
}}
}
И если мое веб-приложение основано на http://www.myapp.com
то, каковы фактические (закладки) URL-адреса, связанные с HomePlace
а также AboutUsPlace
? Они:
http://www.myapp.com/home
а такжеhttp://www.myapp.com/about-us
; или жеhttp://www.myapp.com/HomePlace:home
а такжеhttp://www.myapp.com/AboutUsPlace:about-us
; или же- что-то другое?
Заранее спасибо!
1 ответ
Решение
Это http://www.myapp.com/#home
а также http://www.myapp.com/#about-us
,
Если вы предпочитаете, вы также можете иметь http://www.myapp.com/#HomePlace:home
а также http://www.myapp.com/#AboutUsPlace:about-us
, Чтобы достичь этого, вы должны использовать PlaceTokenizer и @WithTokenizers вместо того, чтобы реализовывать PlaceHistoryMapper самостоятельно.
Оба подхода хороши, это ваш выбор.