如何减少google-maps-react中标记的自定义图标的大小?

时间:2018-12-27 06:57:00

标签: reactjs google-maps-react

因此,我一直在尝试减少在Google地图中使用的自定义标记的大小。我确实发现了一些与减小尺寸有关的属性,例如https://developers.google.com/maps/documentation/javascript/reference/marker#Icon

但是,尽我所能,它不会反映出来。那么,您能帮我确定我在哪里做错了吗?

import React, { Component } from 'react';
import { Map, Marker, GoogleApiWrapper } from 'google-maps-react';
import logo from './pins/Minigrid_RMS_Absent.png'
const mapStyles = {
  width: '100%',
  height: '100%'
};

export class MapContainer extends Component {
  constructor(props){
  super(props)
  this.onMarkerClick=this.onMarkerClick.bind(this)
}
onMarkerClick(){
  console.log('called:')
}
render() {
return (
  <Map
    google={this.props.google}
    zoom={5}
    style={mapStyles}
    initialCenter={{
     lat: 21.5937,
     lng: 78.9629
    }}
  >
  <Marker key='0' icon={{
    url: logo,
    scaledSize:  this.props.google.maps.Size(15,25)
  }} position={{lat: 21.5937, lng: 78.9629}} onClick={this.onMarkerClick}  
/>
  </Map>
);
}
}

export default GoogleApiWrapper({
 apiKey: 'MYKEY'
})(MapContainer);

因此,希望能为指出错误提供一些帮助。谢谢。

Here is the current icon size

2 个答案:

答案 0 :(得分:0)

通过使用比例尺,我们减小了图标的大小。

import { withGoogleMap, GoogleMap, Marker } from "react-google-maps";

 var iconPin = {
        path: 'M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z',
        fillColor: '#64be67',
        fillOpacity: 1,
        scale: 0.05, //to reduce the size of icons
       };


 <GoogleMap zoom={3}>
    <Marker key={marker.id}
            position={{ lat: marker.latitude, lng: marker.longitude}}
            icon={iconPin} />
 </GoogleMap>

答案 1 :(得分:0)

InetAddress addr = InetAddress.getByName("131.10.20.16");
SocketAddress sockaddr = new InetSocketAddress(addr, 8888);                 
MulticastSocket socketForSending=new MulticastSocket(sockaddr);

找到了遗漏的单词。其<Marker key='0' icon={{ url: logo, scaledSize: new this.props.google.maps.Size(15,25) }} position={{lat: 21.5937, lng: 78.9629}} onClick={this.onMarkerClick} />