typescript - Why does my bootstrap navbar break my Google Map in Angular 2? -
i loading google map, second added bootstrap navbar app.component template, started receiving error:
error_handler.js:54 exception: uncaught (in promise): error: error in ./maincomponent class maincomponent - inline template:0:0 caused by: cannot read property 'firstchild' of null. my map id matched documentgetelementbyid (which seems common reason why people have problem), that's not problem. map loads long navbar not present.
main component
<app-map></app-map> app component
<app-navbar><app-navbar> <router-outlet></router-outlet> map template
<div class="container-fluid"> <div class="row"> <!-- map --> <div class="map-container col-xs-12"> <div id="map"> </div> </div> </div> </div> map component
import { component, oninit } '@angular/core'; import { router, routermodule, activatedroute } '@angular/router'; declare var google: any; @component({ selector: 'app-map', templateurl: './map.component.html', styleurls: ['./map.component.css'] }) export class mapcomponent implements oninit { // google.charts.load('current', {'packages':['geochart']}); // google.charts.setonloadcallback(drawregionsmap); constructor() { } ngoninit() { let mapoptions = { center: new google.maps.latlng(0,0), zoom: 2 }; let map = new google.maps.map(document.getelementbyid('map'), mapoptions); } } nav component
import { component, oninit } '@angular/core'; import { routermodule } "@angular/router"; @component({ selector: 'app-navbar', templateurl: './navbar.component.html', styleurls: ['./navbar.component.css'] }) export class navbarcomponent implements oninit { constructor() { } ngoninit() { } } nav template
<nav class="navbar navbar-default"> <div class="container-fluid"> <!-- brand , toggle grouped better mobile display --> <div class="navbar-header"> <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false"> <span class="sr-only">toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" href="#">aether news</a> </div> <!-- collect nav links, forms, , other content toggling --> <!-- <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> </div> --> </div> </nav>
Comments
Post a Comment