问题描述
我正在使用@react-google-maps/api": "1.8.2"
,并想绘制一个虚线多边形和圆形,但是当我将选项({icons: [icon: linesymbol,repeat: '10px]})
传递给or时。它不起作用。
const linesymbol = {
path: 'M 0,-1 0,1',scale: 2,strokeColor: 'green',strokeOpacity: 1,}
const polygonProps = {
options: {
fillOpacity: 0,icons: [{
icon: linesymbol,offset: '0',repeat: '10px',},],// strokeColor: polygonData.strokeColor,// strokeWidth: 1,zIndex: polygonData.zIndex || 10,path: polygonData.pointList.map(item => ({
lat: item[0],lng: item[1]
})),title: polygonData.title,}
<
polygon {
...polygonProps
}
/>
解决方法
您无法像使用折线一样自定义多边形和圆形的笔划。
我们使用以下语法自定义折线:
// Define a symbol using SVG path notation,with an opacity of 1.
const lineSymbol = {
path: "M 0,-1 0,1",strokeOpacity: 1,scale: 4
};
来自Google Docs:
当您要在标记上使用基于矢量的图标或将图像添加到折线 时, 符号非常有用
这是working example,显示了如何自定义折线。 您唯一的选择(这不适用于“圆”,仅适用于“多边形”)是将“多边形”渲染为多段线,然后可以对其进行样式设置。我个人不会打扰。 对不起,我没有更好的消息给您!