fitBounds bug

HTML

<script src="https://api.tiles.mapbox.com/mapbox-gl-js/v0.46.0/mapbox-gl.js"></script>
<link rel="stylesheet" href="https://api.tiles.mapbox.com/mapbox-gl-js/v0.46.0/mapbox-gl.css">
<style>
  body { margin:0; padding:0; }
  #map { position:absolute; top:0; bottom:0; width:100%; }
  button { position: absolute; top: 10px; left: 10px; z-index: 1; }
</style>

<button id='fit'>fitBounds</button>
<div id="map"></div>

Babel + JSX

mapboxgl.accessToken = 'pk.eyJ1IjoibWFwYm94IiwiYSI6ImNpejY4M29iazA2Z2gycXA4N2pmbDZmangifQ.-g_vE53SD2WrJ6tFX7QHmA';
console.log('mapboxgl', mapboxgl);
var map = new mapboxgl.Map({
    container: 'map',
    style: 'mapbox://styles/mapbox/streets-v9',
    center: [-74.50, 40],
    zoom: 9
});

const bounds = [[-180, -90], [180, 90]];

document.getElementById('fit').addEventListener('click', function() { map.fitBounds(bounds); });