Как отобразить GoogleMap в панели содержимого Dojo
У меня есть приложение Spring/ Dojo. Требуется найти адрес в стеке-контейнере / области содержимого на карте. Первой мыслью было перенаправление на карты Google, и возникали проблемы с CORS & ACCESS_ORIGIN.
Кто-нибудь может направить нас?
1 ответ
Не уверен, что вы имеете в виду под "перенаправление на карты Google", и я не знаком с весной.
Ниже приведен пример, который я создал после некоторого поиска в Google (среди прочего здесь), использует API JavaScript google maps и отображает карту в ContentPane (по крайней мере, в моей среде). Вам нужно будет предоставить свой ключ API Google и адаптировать конфигурацию к вашей среде:
<!DOCTYPE HTML>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Google maps demo</title>
<link rel="stylesheet" href="dojo-release-1.12.2-src/dijit/themes/claro/claro.css" media="screen">
</head>
<body class="claro">
<div id='theMap'></div>
<script>var dojoConfig ={
baseUrl: "", isDebug: true, async: true,
packages: [{"name": "dojo", "location": "dojo-release-1.12.2-src/dojo"}, {"name": "dijit", "location": "dojo-release-1.12.2-src/dijit"},
],
};
</script>
<script src="dojo-release-1.12.2-src/dojo/dojo.js"></script>
<script>
require([
'dijit/layout/ContentPane',
'myApp/gmapsLoader!http://maps.google.com/maps/api/js?v3&key=YOUR_GOOGLE_API_KEY'
], function (ContentPane) {
var theMap = new ContentPane({style: {height: '1000px'}}, 'theMap');
var mapOptions = {
center : new google.maps.LatLng(-34.397, 150.644),
zoom : 8,
mapTypeId : google.maps.MapTypeId.ROADMAP
};
var theMapContent = new google.maps.Map(theMap.domNode, mapOptions);
theMap.startup();
});
</script>
</body>
</html>
Он зависит от gmapLoader, который описан здесь (под именем async.js).
х