Multi Markers
+ With layers
Hover unoptim
Hover optim
Resizable Map
diff --git a/develop/Main.js b/develop/Main.js
index c058e23..98b3fec 100644
--- a/develop/Main.js
+++ b/develop/Main.js
@@ -4,6 +4,7 @@ import { render } from 'react-dom';
import { Router, Route, IndexRoute, browserHistory } from 'react-router';
import Layout from './Layout';
import GMap from './GMap';
+import GMapLayers from './GMapLayers';
import GMapOptim from './GMapOptim';
import GMapResizable from './GMapResizable';
@@ -16,6 +17,7 @@ render(
+
diff --git a/develop/data/fakeData.js b/develop/data/fakeData.js
index a00e596..512b048 100644
--- a/develop/data/fakeData.js
+++ b/develop/data/fakeData.js
@@ -1,5 +1,6 @@
export const susolvkaCoords = { lat: 60.814305, lng: 47.051773 };
+export const londonCoords = { lat: 51.508411, lng: -0.125364 };
export const generateMarkers = (count) =>
[...Array(count)].fill(0) // fill(0) for loose mode
diff --git a/src/google_map.js b/src/google_map.js
index f55b2bc..a49f2c4 100644
--- a/src/google_map.js
+++ b/src/google_map.js
@@ -91,6 +91,7 @@ export default class GoogleMap extends Component {
draggable: PropTypes.bool,
style: PropTypes.any,
resetBoundsOnResize: PropTypes.bool,
+ layerTypes: PropTypes.arrayOf(PropTypes.string), // ['TransitLayer', 'TrafficLayer']
};
static defaultProps = {
@@ -111,6 +112,7 @@ export default class GoogleMap extends Component {
padding: 0,
position: 'relative',
},
+ layerTypes: [],
};
static googleMapLoader = googleMapLoader; // eslint-disable-line
@@ -454,6 +456,12 @@ export default class GoogleMap extends Component {
mapOptions.minZoom = this._checkMinZoom(mapOptions.minZoom, minZoom);
const map = new maps.Map(ReactDOM.findDOMNode(this.refs.google_map_dom), mapOptions);
+
+ this.props.layerTypes.forEach((layerType) => {
+ const layer = new maps[layerType]();
+ layer.setMap(map);
+ });
+
this.map_ = map;
this.maps_ = maps;