js文件,带有yandex地图定义:
public class Ymap {
public static final native Object getMap() /*-{
var myMap;
function init() {
// Creating an instance of the map and binding it to the container with the specified ID
// ("map").
myMap = new ymaps.Map('map', {
center : [ 55.010251, 82.958437 ], // Новосибирск
zoom : 9
}, {
searchControlProvider : 'yandex#search'
});
}
YMaps.load(init);
return myMap;
}-*/;
}
,然后我将此JS代码称为另一个文件,以将映射放在SmartGWT布局中。
Canvas canvas = new Canvas();
canvas.addChild((Canvas)Ymap.getMap());
layoutRight.addMember(canvas);
但是在浏览器中,我会收到参考错误:未定义ymaps
yandex map api不能加载到一个文件中,并在我的项目中使用。因此,我必须创建一个HTML文件。在它的标题中,我加载了API,并在脚本中使用API编写了JS代码。我从java文件中发送的所有必要参数,我发送了get request。HTML文件的结果以其SETCONTENTSURL方法放置在我的SmartGWT的HTMLPANE内部。