現在地を表示するボタンをleaflet JSのマップ上に置きたい。
というときに下記のライブラリがあったので使わせてもらった
domoritz/leaflet-locatecontrol: A leaflet control to geolocate the user.
しかし、leaflet-locatecontrolをいざ導入してみると、ローディング中の表示が長い。。。
自分の他のコーディング部分がよろしくない可能性はあるものの、原因探すのがめんどくさかったので、自前で作ってみました。
自前のMy Leaflet Locate Button
See the Pen Leaflet JS Original My Location Button by yasuhito kanayama (@knym) on CodePen.
アイコンは、font awesomeを使ってます。
埋め込んでるからか現在地情報がうまく取れないので、上記のcodepenのアイコンをクリックして、別ウィンドウで開いて、適当にマップをドラッグ。
左上の現在地ボタンを押すと今の現在地に戻るはず。
まとめ
LeafletのControlの実装を今回試してみました。
上記codepenのJSを見てもらったらだいたい何やってるかわかると思います。
思いのほか簡単だったので、今後、Leafletのライブラリは自前で作れないか今後、検討していきたいと思います!
Leafletの参考書籍
下の本の方が出版日が新しくておすすめ。