1

这是我为说明我遇到的问题而编写的一些可重现的 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)

请帮忙!

如果您需要更多信息,请告诉我。

4

0 回答 0