我有一个问题,数据表并不总是显示在我的应用程序中.让我给你展示一个例子:
library(shiny)
ui <- fluidPage(
shinyjs::useShinyjs(),
"Bli",
checkboxInput("ch","display datatable",value = TRUE),
shinyjs::hidden(DT::DTOutput("dt")),
"Blob",
#DT::DTOutput("dt2"),
"Blub"
)
server <- function(input, output, session) {
observeEvent(input$ch,{
if(input$ch){
shinyjs::show("dt")
} else {
shinyjs::hide("dt")
}
})
output$dt <- DT::renderDT(DT::datatable(iris))
output$dt2 <- DT::renderDT(DT::datatable(iris))
}
shinyApp(ui, server)
如果我取消对DT2-OUTPUT的注释,它将按预期工作:选中复选框时,将呈现并显示该表.然而,该表根本没有显示.为什么会这样呢?我找不到dt
和dt2
之间的任何逻辑联系.
为了使第一个数据表正常工作,我可以进行哪些更改以使我不必拥有第二个数据表?