首页 > 解决方案 > Openlayers绘制交互:错误:单击后拖放地图

问题描述

我正在尝试向我的地图添加绘图交互。用户应该单击一个按钮,添加一个点,然后添加有关该点的属性信息。我仍然停留在绘图部分:在地图中绘制一个点后,光标位置保持不变,鼠标移动会改变背景中的地图(如平移时)。当我再次单击时,它会停止。不知道为什么要这样做。在 Chrome 的控制台中,我在 openlayers 的 draw.js 文件中收到错误(this.source_.addFeature 不是函数)。

感谢您的帮助!

这是我的代码:

    function addFeature() {
                var btn_cancel = document.getElementById('buttonCancel');
                btn_cancel.style.display = 'block';
    
                var btn_add = document.getElementById('buttonAdd');
                btn_add.classList.add("button_clicked");
    
                var draw; 
                function addInteraction() {
                    draw = new ol.interaction.Draw({
                        source: lunchvec,
                        type: "Point",
                    });
                    map.addInteraction(draw);

                    draw.on('drawend', function(evt) {
                        console.log(evt.feature.getGeometry().getCoordinates());
                        map.removeInteraction(draw);
                    });
    
                };
    
                addInteraction();
}

标签: javascriptopenlayersdraw

解决方案


推荐阅读