我想在用户打开/登陆“tab1”时自动运行操作按钮。因此,我不想单击“刷新”按钮来查看日期,而是希望自动打印日期。有没有办法做到这一点?我的真实代码比这个简单的示例更复杂。然而,它展示了我想做的事情。谢谢!
library(shiny)
ui <- fluidPage(
shiny::tabPanel(value = 'tab1', title = 'Data page',
br(),
shiny::actionButton("btn", "Refresh!"),
br(),
shiny::verbatimTextOutput("out")
)
)
server <- function(input, output, session) {
curr_date <- shiny::eventReactive(input$btn, {
format(Sys.Date(), "%c")
})
output$out <- shiny::renderText({
print(curr_date())
})
}
shinyApp(ui, server)
最佳答案
您可以使 curr_date
对选项卡集使用react:
library(shiny)
ui <- fluidPage(
tabsetPanel(
tabPanel(value = 'tab1', title = 'Data page',
br(),
actionButton("btn", "Refresh!"),
br(),
verbatimTextOutput("out")
),
tabPanel(value = 'tab2', title = 'Other tab'),
id = "tabset"
)
)
server <- function(input, output, session) {
curr_date <- eventReactive(list(input$btn, input$tabset), {
req(input$tabset == 'tab1')
format(Sys.time(), "%c")
})
output$out <- renderText({
print(curr_date())
})
}
shinyApp(ui, server)
关于r - 如何在 R Shiny 中自动触发操作按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60174408/