###やりたいこと
ズームや地域によって表示する地図を切り替えたい
###ためしたこと
js
1var map = L.map('map').setView([51.505, -0.09], 13); 2 3 L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', { 4 attribution: '© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors' 5 }).addTo(map); 6 7 var drawnItems = new L.FeatureGroup(); 8 map.addLayer(drawnItems); 9 var drawControl = new L.Control.Draw({ 10 edit: { 11 featureGroup: drawnItems 12 } 13 }); 14 map.addControl(drawControl);
ここまでで初期化がおわった段階で
js
1 var map = L.map('map').setView([51.505, -0.09], 13);
と単純に初期化をやりなおしただけでは
Map.js:1057 Uncaught Error: Map container is already initialized.
というエラーが出ます
js
1 map.remove(); 2 var map = L.map('map').setView([51.505, -0.09], 13);
で地図を消して作り直すと draw-control を追加するまではうまくいってたのですが
map.addControl(drawControl)後に地図を切り替えるとマウスをドラッグしたときに
DomUtil.js:242 Uncaught TypeError: Cannot read property '_leaflet_pos' of undefined
というエラーが出ます
map.remove() だけでもでるので何かコントローラー制御だけが残ってしまうようです
どうすれば初期化後にタイルレイヤーのプロトコルを変更することができるのでしょうか

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。