0

序章

私はリーフレットAPIを使用するアプリケーションに取り組んでいます。Live Here 最初のユーザーが入力として「1」を入力して、画像をマップにロードします。

次に、ユーザーは左下のボタンを使用してさまざまな形状 (フェンス) を描くことができます。「消しゴム」ボタンは、CurrentFeatureGroup に関するマップからすべてのレイヤーを削除すると想定されています。

問題

「消しゴム」ボタンをクリックすると、現在の機能グループを持つマップからすべての形状が削除されます。しかし、他の形状を描画するときに削除した後、これらの形状は表示されませんが、機能が正常に機能していることを確認しました。これらの形状がどのように見えなくなったのかわかりません。

スクリプト(レイヤーの削除を担当)

L.easyButton('<img src="/delete.png">', function () {
                    map.removeLayer(currentFeatureGroup);
                    $('.leaflet-container').css('cursor', '');
                }).addTo(map);

clearLayer ではなく、removeLayer を検討してください。誰かがこの問題について何か考えを持っている場合は、助けてください。

4

1 に答える 1

1

を使用してマップからフィーチャレイヤーを完全に削除した場合、map.removeLayer(currentFeatureLayer)その後に描画する新しいフィーチャはどこに追加されると思いますか? 現在のすべてのフィーチャをフィーチャ レイヤから削除する場合は、currentFeatureLayer.clearLayers()後でフィーチャを追加し続けることができるように、フィーチャ レイヤを保持するものを使用する必要があります。

于 2015-10-03T11:26:33.770 に答える