Reactjs 单击按钮时添加多段线
我想在地图中添加一条多边形线,但似乎无法在单击按钮时使其渲染。以下是我目前拥有的代码:Reactjs 单击按钮时添加多段线,reactjs,leaflet,react-leaflet,Reactjs,Leaflet,React Leaflet,我想在地图中添加一条多边形线,但似乎无法在单击按钮时使其渲染。以下是我目前拥有的代码: <button onClick={ function(){ console.log(asset.past); var pathLine = new L.Polyline(asset.past, { color: 'red'
<button onClick={
function(){
console.log(asset.past);
var pathLine = new L.Polyline(asset.past, {
color: 'red',
weight: 3,
opacity: 0.5,
smoothFactor: 1
}
);
leafletMap.addLayer(pathLine);}
}
className="btn btn-info eachBtn">Go</button>
Go
谢谢,Ed.您似乎试图在react传单的上下文之外管理映射状态。我甚至不确定你是在使用这个软件包,还是在尝试推出自己的react网站,而这个网站碰巧有传单 如果确实在使用,则应维护要在组件状态下渲染的多段线列表,或由父组件更新和发送的属性。然后,在渲染函数中,您将迭代这些多段线,并将它们中的每一条渲染为多段线 大概是这样的:
render() {
return (
<Map
center={[51.505, -0.09]}
zoom={13}
>
<TileLayer
attribution='© <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
url='http://{s}.tile.osm.org/{z}/{x}/{y}.png'
/>
{this.state.polylines.map((positions, idx) =>
<Polyline key={`polyline-${idx}`} positions={positions} />
)}
</Map>
);
}
render(){
返回(
{this.state.polylines.map((positions,idx)=>
)}
);
}
另外,请参见一个类似的react传单应用程序的示例,该应用程序在单击地图上的点后添加标记。现在可以使用了,如果没有您的帮助,我肯定无法使用它!你是了不起的,我希望你有一个了不起的日子,星期,月,年和生活!!!