Shadow DOM error in Google Map
by Keith Henry
HTML
<div id="map"></div>
<!-- Replace the value of the key parameter with your own API key. -->
<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyCkUOdZ5y7hMm0yrcCQoCvLwzdM6M8s5qk&callback=initMap" async defer></script>
CSS
/* Always set the map height explicitly to define the size of the div
* element that contains the map. */
#map {
height: 100%;
}
/* Optional: Makes the sample page fill the window. */
html, body {
height: 100%;
margin: 0;
padding: 0;
}
JavaScript
let map;
function initMap() {
const parent = document.getElementById('map');
const shadow = parent.attachShadow({mode: 'open'});
const wrapper = document.createElement('div');
wrapper.style.height = '100%';
shadow.appendChild(wrapper);
map = new google.maps.Map(wrapper, {
streetViewControl: false,
mapTypeControl: false,
center: {lat: -34.397, lng: 150.644},
zoom: 8
});
}