在下面的最小示例中,请注意,当file.choose()行被注释掉时,代码按照预期的方式工作:单击Input选项卡上的OK按钮将切换到结果选项卡。
但是,取消对file.choose()行和updateTabsetPanel()函数的注释不再有效。在file.choose()开始之前,是否有办法使选项卡在屏幕上进行更改?
ui <- fluidPage(fluidRow(
tabsetPanel(id="main",
tabPanel("Input", actionButton("okButton", "OK")),
tabPanel("Results", h3(textOutput("results")))
)))
server <-function(input, output, session) {
output$results = renderText("Results Tab")
observeEvent(input$okButton, {
updateTabsetPanel(session, "main", "Results")
# file.choose()
})
}
shinyApp(ui = ui, server = server)发布于 2016-10-19 02:51:02
您可以分两步完成: 1.切换选项卡;2.根据选项卡切换事件,打开文件选择窗口。
ui <- fluidPage(fluidRow(
tabsetPanel(id="main",
tabPanel("Input", actionButton("okButton", "OK")),
tabPanel("Results", h3(textOutput("results")))
)))
server <-function(input, output, session) {
output$results = renderText("Results Tab")
observeEvent(input$okButton, {
updateTabsetPanel(session, "main", "Results")
})
observeEvent(input$main, {
if (input$main == "Results") {
file.choose()
}
})
}
shinyApp(ui = ui, server = server)https://stackoverflow.com/questions/40120870
复制相似问题