r传单:如何获取标记被拖到的纬度/经度?

时间:2018-11-19 08:17:11

标签: r leaflet

在R版本的传单中,如何获取标记被拖到的纬度?

library(shiny)
library(leaflet)
library(tidyverse)

ui = fluidPage(
    leafletOutput('map'),
    textOutput('dragEndLocation')
)

server = function(input, output, session){
    output$map = leaflet() %>%
        addTiles() %>%
        addMarkers(lat = 1,lng = 2, options = markerOptions(draggable = TRUE)

    output$dragEndLocation = renderText({
        ???
    })
}

我在javascript传单中看到,有一个名为dragEnd的事件可以监听,但是在R传单中未实现。 (leaflet.js - Set marker on click, update position on drag

此人(How to update coordinates after dragging a marker in leaflet shiny?)通过侦听input$map_marker_mouseout,然后检查经纬度是否已更改,从而做出了骇人的解决方法,但这并不理想。当您快速拖动标记时,鼠标移出将注册几次。对于这个最小的工作示例而言,这不是问题,但对于我的实际应用程序而言,它希望在拖曳结束后使用较慢的脚本,这使得此解决方法非常容易出错和缓慢。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

古老的问题,但我来寻找相同的问题并弄清楚了:

observe({
    print(input$map_marker_dragend)
})

换句话说-您正在寻找的事件是 dragend