1

反応リーフレットを使用して、マップ上で非常に長いパスを視覚化しました。ユーザーはリストから選択できますが、選択したパスに別の色を付けたいです。状態を変更して再度レンダリングするのは遅すぎるため、より高速な解決策を探しています。

リーフレット パス要素には setStyle() メソッドがあるため、最初のアイデアは、再度レンダリングする代わりにそれを使用することでした。しかし、リーフレット レイヤーを参照するにはどうすればよいでしょうか。

class MyPathComponent extends React.Component {

  shouldComponentUpdate(nextProps, nextState) {
    if (nextProps.selected){
      this.setState({selected: true});
      LEAFLET_POLYLINE.setStyle({
        color: 'red'
      });
    }
    return false;
  }

  render() {
    return(
      <Polyline polylines={this.props.path} />
    );
  }
}

では、このコードのLEAFLET_POLYLINEの代わりに何を書けばよいのでしょうか?

4

2 に答える 2