GoogleMapReact组件onClick事件无响应,console.log未执行求助
排查GoogleMapReact onClick事件无响应问题
从你的代码来看,可从以下几个关键点逐一排查:
容器高度未设置
GoogleMapReact组件依赖父容器的明确高度才能正常渲染。检查classes.mapContainer的样式,确保包含高度设置,比如:.mapContainer { height: 100vh; /* 或具体像素值,如600px */ width: 100%; }若容器无高度,地图无法渲染,点击事件自然不会触发。
options属性传值错误
你给options传了空字符串'',但该属性要求传入对象(或直接省略)。空字符串会导致地图初始化异常,可能阻断事件绑定。将options={''}改为options={{}}或直接删除这个属性。coordinates参数合法性
确认传入的coordinates是格式正确的对象,比如{ lat: 纬度数值, lng: 经度数值 }。如果coordinates是undefined或lat/lng不是有效数字,地图加载失败,点击事件也不会生效。可在组件开头添加console.log(coordinates)验证参数。onClick事件参数误用
GoogleMapReact的onClick回调参数结构是({ lat, lng, event }),不存在center属性。你代码中的e.center.lat会触发报错,即使事件触发也可能因错误被静默处理。正确写法应为:onClick={({ lat, lng }) => { console.log('点击坐标:', lat, lng); setCoordinates({ lat, lng }); }}
内容的提问来源于stack exchange,提问作者Mellow
相关产品推荐
相关产品推荐

