I use two observeEvents, one on selectInput and another on a map_shape_click.
The map_shape_click updates the values on the selectInput.
How can avoid that the selectinput value is triggered after the map_shape_click, while maintaining a trigger when only the selectInput is changed?
see code below. When the poly line is clicked, the dropdown event is triggered. How can this be avoided?
library(leaflet)
ui <- fluidPage(
mainPanel(
leafletOutput("mymap"),
p(),
selectInput("test", "test", c("value 1", "value 2", "value 3", "X")),
p(),
textOutput("selected_var")
)
)
df <- data.frame (lat = c(41.82, 46.88, 41.48, 39.14), lon = c(-88.32, -124.10, -88.33, -114.90))
server <- shinyServer (function(input, output, session) {
output$mymap <- renderLeaflet({
leaflet('map',height = "100%") %>% addTiles()
})
observe({
leafletProxy('mymap') %>% addPolylines(data = df, lat = ~lat, lng = ~lon, layerId="test", group = "test")
})
observeEvent(input$mymap_shape_click,{
print ("shapeclicked")
output$selected_var <-renderText ("shapeclicked")
updateSelectInput(session, "test", selected = "X")
})
observeEvent(input$test, {
print ("dropdown triggered")
output$selected_var <-renderText ("dropdown triggered")
})
})
shinyApp(ui = ui, server = server)