在下拉菜单中添加 actionbutton ,我怎么知道按钮是否被点击了 shiny

Add actionbutton in a dropdown menu , how do I know if the button was clicked in shiny

想知道一个按钮是否被点击或者如何集成 shiny 的 actionButton 需要知道一个选项是否被选中然后用于运行 某事

新手使用 shiny,只想做一个简单的 dashboard

library(shiny)

library(bs4Dash)
ui <- 
    bs4DashPage(
        enable_preloader = TRUE,
        navbar = bs4DashNavbar(border = FALSE,
                               rightUi = HTML('<div class="dropdown">
                                              <button class = "btn btn-outline-primary dropdown-toggle"
                                                      type  = "button"
                                                      id    = "dropdownMenuButton"
                                                      data-toggle ="dropdown" 
                                                      aria-haspopup="true" 
                                                      aria-expanded="false">
                                                      Período de Consulta
                                                      </button>
                                              <div class="dropdown-menu dropdown-menu-right"  aria-labelledby="dropdownMenuButton">
                                                <button id = "yr_anterior"  class="dropdown-item" type="button">Año Pasado</button>
                                                <button id = "mes_anterior" class="dropdown-item" type="button">Mes Pasado</button>
                                                <button id = "sem_anterior" class="dropdown-item" type="button">Ultima Semana</button>
                                              </div>
                                            </div>')),
        sidebar = bs4DashSidebar(title = "Opciones",skin = "light",status = "info",brandColor = "primary"),
        
        footer = bs4DashFooter(),
        title = "test",
        body = bs4DashBody(
            textOutput("valor")
        )
    )
server <- function(input, output,session) {
observeEvent(input$yr_anterior,{
    output$valor <- renderText("hola")})
}

# Run the application 
shinyApp(ui = ui, server = server)

我认为 shinyWidgets 包中的函数 pickerInput 可以生成您要查找的内容。您可以像这样在示例中使用标签,并且 input$InputMenuserver 函数

上给出选定的选项
pickerInput(inputId = 'InputMenu',
            choices = c("Período de Consulta","Año Pasado","Mes Pasado","Ultima Semana"),
            options = list(style = "btn-outline-primary dropdown-toggle") )

或添加标签而不是第一个选择label="Período de Consulta:"