GooglemapをAngularJS上(OnsenUI)で表示したいです。
端末上で1回目開くと表示されるのですが、
同じ画面を2回開くと、2回目以降Mapが表示されません。
きちんと GoogleMapを初期化して2回目以降でも表示できるようにしたいのですが、どうすれば良いのでしょうか?
要は記事詳細画面のため、記事によって緯度経度を変えて表示させたいのですが、
それができていない状態になります
Cordova上にAngularJS(OnsenUI)を走らせiOSアプリとして走らせています。
AngularJS:Version1.48 です。
Mapのプラグインとしてcordova-plugin-googlemapsを使っています。
lang
1module.controller('DetailController', function($scope,$data,$rootScope,$timeout) { 2var div = document.getElementById("map_canvas"); 3const Pointlat = new plugin.google.maps.LatLng($scope.lat,$scope.long); 4var map =null; 5var map = plugin.google.maps.Map.getMap(div,{ 6 'controls': { 7 'compass': true, 8 'indoorPicker': true, 9 'zoom': true 10 }, 11 'gestures': { 12 'scroll': true, 13 'tilt': true, 14 'rotate': true, 15 'zoom': true 16 }, 17 'camera': { 18 'latLng': Pointlat, 19 'zoom': 18, 20 } 21}); 22 map.addEventListener(plugin.google.maps.event.MAP_READY, onMapReady); 23 function onMapReady() { 24 $('.page__background').not('.page--menu-page__background').css('background-color', 'rgba(0,0,0,0)'); 25 } 26 });
lang
1<ons-template id="detail.html"> 2 <ons-page ng-controller="DetailController"> 3 4 <ons-toolbar> 5 <div class="left"><ons-back-button>Back</ons-back-button></div> 6 <div class="center">詳細画面</div> 7 </ons-toolbar> 8 9 <ons-list modifier="inset" style="margin-top: 10px"> 10 11<div ng-repeat="item in item"> 12 <ons-list-item class="item"> 13タイトル 14 15 </ons-list-item> 16 17 <ons-list-item class="item centering"> 18 19 <div style="width:100%;height:400px" id="map_canvas" class="gmap_div"></div> 20 </ons-list-item> 21 </ons-list> 22 <br> 23 24 </ons-page> 25 </ons-template>
回答1件
あなたの回答
tips
プレビュー