我正在尝试在我的 GWT Web 应用程序中添加一个利用 InputElement 和 AutoComplete 的搜索栏。搜索栏基本上是在 GoogleMap 上搜索位置。这是我到目前为止所做的代码:
@UiField
InputElement input;
//
//
//
final Autocomplete autocomplete = Autocomplete.create(input);
final InfoWindow infowindow= InfoWindow.create();
autocomplete.addPlaceChangedListener(new PlaceChangedHandler(){
public void handle(){
PlaceResult place=autocomplete.getPlace();
String address=place.getAddressComponents().get(0).getShortName();
infowindow.setContent(place.getName()+", "+address);
addMarker(place.getGeometry().getLocation(),place,infowindow);
map.setCenter(place.getGeometry().getLocation());
map.setZoom(17.0);
}
});
//
//
//
<g:north size='5'>
<g:HTMLPanel>
<div>
<g:Label ui:field="label1">PublicFortress</g:Label>
</div>
<div>
<g:Anchor ui:field="signin" href="#">SignIn</g:Anchor>
<g:Button ui:field="home">Home</g:Button>
<div>
<input type="text" name="Search" ui:field="input" class="custom" />
</div>
</div>
</g:HTMLPanel>
</g:north>
我知道这不是完成这项工作的正确方法,因此我收到以下错误:
com.google.gwt.core.client.JavaScriptException: (TypeError) @com.google.maps.gwt.client.places.Autocomplete::create(Lcom/google/gwt/dom/client/InputElement;)([JavaScript 对象(30)]): $wnd.google.maps.places 在 com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:249) 中未定义
请帮忙 !