Closed crcrcry closed 7 years ago
export default class MapArea extends Component { constructor(){ super(); this.mapPlugins = ['ToolBar']; this.mapEvents = { click: (e) => { this.props.changePosition(e.lnglat); } } } render(){ const polylineArr = this.props.roads.map((item, index) => { return( <Polyline key={`polyline${index}`} path={[{ longitude:item.coordinates[0][0], latitude: item.coordinates[0][1], }, { longitude:item.coordinates[1][0], latitude: item.coordinates[1][1], }]} style={{strokeColor: '#f00', strokeOpacity: 0.5+0.5*Number.parseFloat(item.probability), strokeWeight: 7}} /> ) }); return ( <div> <div style={style.mapArea}> <Map plugins={this.mapPlugins} center={this.props.position} events={this.mapEvents} zoom={17}> <Marker position={this.props.position} /> {polylineArr} </Map> </div> </div> ) } }
多测试了几次发现:如果新的 polyline 数组没有老的数组长,那老的数组长出来的那部分线条则不会重绘,仍然留在地图上。
很抱歉,确实是个 bug,今天会发个新版本修复这个问题。
你好,更新 1.0.3 版本修复了这个问题。
非常感谢,饿了么大前端很赞
react-amap version
OS/Browers version
Reproduction Link
Steps to reproduce
Code
What is Expected?
What is actually happening?
Screenshot
上一轮查询,ui + 控制台
本轮查询,ui + 控制台