这是我为说明我遇到的问题而编写的一些可重现的 R/Shiny 代码...基本上,如果我尝试将数字输入嵌入到传单地图中,如下图所示,我无法调用指定的值输入在数字输入中。
在网上搜索之后,我预感到需要基于 JS 的解决方案,因为闪亮和传单渲染地图的方式。我尝试创建一个 UI 输出,然后渲染一个 UI 数字输入,尝试使用反应函数的各种策略,但没有走得很远。任何帮助将不胜感激,因为我一直在努力解决这个问题。
library(shiny)
library(leaflet)
library(dplyr)
content <- paste(sep = "<br/>",
"<b>Change number below:</b>",
numericInput("numeroUno", label = NULL, value = 1)
)
ui <- fluidPage(
"This is a map",
leafletOutput("myMap"),
numericInput('numeroDos', label = NULL, value = 5),
textOutput("mapPopupLink"))
server <- function(input, output, session) {
output$myMap <- renderLeaflet({
leaflet() %>%
setView(lng = 25.0343, lat = 77.3963, zoom = 5) %>%
addPopups(-122.327298, 47.597131, content, options = popupOptions(closeButton = FALSE)) %>%
addTiles() %>%
addProviderTiles(providers$OpenTopoMap)
})
output$mapPopupLink <- renderText({
paste("The ui-based widget prints: ", input$numeroDos, ". But the server-based widget does not: ", input$numeroUno)
})
}
shinyApp(ui, server)
请帮忙!
如果您需要更多信息,请告诉我。