我们都好吗?CSS菜鸟在这里。
我已经导入了 google-maps-react 并在我的项目中使用它。我正在尝试使用 CSS Grid 定义它使用的空间。但是在渲染时在 DOM 上会产生:
<div><-- Map Component--></div>
像这样,组件试图占用它的父 div 的空间,但不幸的是,外部 div 渲染为 0px 宽,但是下一个父级别的 div 是我的代码,并且给子元素一个很好的网格区域我想让他们填满。
...
return (
<Map
google={google}
initialCenter={location}
zoom={14}
containerStyle={props.containerStyle}>
<Marker
name={'Name'}
onClick={onMarkerClick}>
</Marker>
</Map>
);
}
export default GoogleApiWrapper({
apiKey: ('Key'),
})(MapContainer)
我需要自动,因为它默认使用“100%”,它采用窗口大小。
<div style={{gridArea: '2 / 5 / 3 / 6'}}>
<MapContainer containerStyle={{width: 'auto', height: 'auto'}} />
</div>
渲染的 HTML 和 CSS:
理想情况下,我希望完全删除此 div,但 google-maps-react 源代码已被转译,因此在 jsx => 中不难阅读。这可能是因为当我从自定义组件导出时,我将它包装在 GoogleApiWrapper 包装器中(根据 google-maps-react 文档),但没有它它就无法工作。我尝试查看包装类,但看不到任何我可以用来提供帮助的东西。
我可以尝试编辑 div 内容,或者让有用的内容 div 访问父母的父母属性,但我不确定如何。google-maps-react Map 组件具有 style 和 containerStyle 属性,但是它们属于非问题子元素。如果我能提供帮助,我也不想计算代码中的大小并将其传递给 containerStyle(尽管这会起作用)。
任何想法将不胜感激!
格雷格
编辑:
好的,所以我设法通过编辑模块代码来删除 div。问题与div无关!
考虑关闭,但一旦解决可能仍会更新。