Shiny 闪亮选择输入不';对选项卡选择没有反应

Shiny 闪亮选择输入不';对选项卡选择没有反应,shiny,leaflet,shinyapps,r-leaflet,bs4dash,Shiny,Leaflet,Shinyapps,R Leaflet,Bs4dash,这是我的问题,我有几个选项卡,我正试图根据selectInput()函数中的选项更新地图。 inputSelect()中的select选项被激活,并指向洛杉矶Los Angeles,该选项应激活ObserveEvent()或ObserveEvent()功能,但第一次单击Map选项卡时不会激活。 但是,我意识到当单击第二个选项卡时,setView()函数不会自动更新,即使我在selectInput()中设置了选项。 我需要一个setView(),它在第一次单击选项卡时对所选的选项作出反应。 sel

这是我的问题,我有几个选项卡,我正试图根据
selectInput()
函数中的选项更新地图。
inputSelect()
中的
select
选项被激活,并指向洛杉矶
Los Angeles
,该选项应激活
ObserveEvent()
ObserveEvent()
功能,但第一次单击
Map
选项卡时不会激活。 但是,我意识到当单击第二个选项卡时,
setView()
函数不会自动更新,即使我在
selectInput()
中设置了
选项。
我需要一个
setView()
,它在第一次单击选项卡时对所选的
选项作出反应。
selectize
选项没有任何区别。 下面是一个我想复制的示例

library(shiny)
library(leaflet)

ui = bs4DashPage(
  h1('Exemple'),
  br(),
  bs4TabSetPanel(id = 'tabs',
                 side = 'left',
                 bs4TabPanel(tabName = 'First tab',
                             active = TRUE,
                             'Here is some text'),
                 bs4TabPanel(tabName = 'Second tab',
                             active = FALSE,
                             fluidRow(bs4Card(title = 'Inputs',     
                                              solidHeader = TRUE,
                                              width = 2,
                                              closable = FALSE,
                                              selectInput(inputId = 'city',
                                                          label = 'Select a city',
                                                          choices = c('New York','Los Angeles','Seattle'),
                                                          selected = 'Los Angeles',
                                                          selectize = TRUE)),
                                      bs4Card(title = "Map",
                                              width = 10,
                                              leafletOutput('map'))
                                      )))
)


server <- function(input, output, session) {
  output$map <- renderLeaflet({
    leaflet() %>%
      addTiles() %>%
      setView(lng = -95.7129,lat = 37.0902, zoom = 3)
  })

  observeEvent(input$city, {
    if(input$city == 'New York'){
      lon <- -74.0060
      lat <- 40.7128
    } else if(input$city == 'Los Angeles'){
      lon <- -118.2437
      lat <- 34.0522
    } else{
      lon <- -122.3321
      lat <- 47.6062
    }
    leafletProxy('map') %>%
      setView(lng = lon, lat = lat, zoom = 5)
  })
}

shinyApp(ui, server)
库(闪亮)
图书馆(单张)
ui=bs4DashPage(
h1(“示例”),
br(),
bs4TabSetPanel(id=‘选项卡’,
边='左',
bs4TabPanel(tabName='First tab',
活动=真,
“这里有一些文字”),
bs4TabPanel(选项卡名称='第二个选项卡',
活动=错误,
fluidRow(bs4Card)(标题=‘输入’,
solidHeader=TRUE,
宽度=2,
closable=FALSE,
选择输入(inputId='city',
标签='选择一个城市',
选项=c(‘纽约’、‘洛杉矶’、‘西雅图’),
选定='洛杉矶',
选择size=TRUE),
bs4Card(title=“地图”,
宽度=10,
传单输出('map'))
)))
)
服务器%
设置视图(lng=-95.7129,纬度=37.0902,缩放=3)
})
observeEvent(输入$city{
如果(输入$city==“纽约”){

lon关于
observeEvent(列表(输入$tabs,输入$city),{……
?很遗憾,它不起作用,但谢谢你,我将在另一个项目中使用这一行代码;-)