我想在shinyWidgets
下拉列表中显示包含某些信息的电子表格,有时跨越多个页面。
如果单击下一页,则下拉列表再次关闭。
如何避免这种情况?
library(shiny)
library(shinyWidgets)
ui <- fluidPage(
br(),br(),br(),
p("How to go to the next page, without collapsing?"),
uiOutput("irisdrop", inline = TRUE)
)
server <- function(input, output, session) {
output$irisdrop <- renderUI({
dropdown(circle = FALSE, inputId = "iris",
label = "iris", status = "primary",
datatable(iris, rownames = NULL,
height = "100%",
selection = "none"
)
)
})
}
shinyApp(ui, server)
最佳答案
你可以做这样的事情-
library(shiny)
library(shinyWidgets)
library(DT)
ui <- fluidPage(
dropdownButton(
inputId = "iris",
label = "iris",
icon = icon("sliders"),
status = "primary",
circle = FALSE,
DT::dataTableOutput("iris_tb")
)
)
server <- function(input, output, session) {
output$iris_tb <- DT::renderDataTable({
datatable(iris, rownames = NULL,
height = "100%",
selection = "none"
)
})
}
shinyApp(ui, server)
注意:您甚至可以使用
dropdown()
代替dropdownButton()
包中的shinyWidgets
。dropdown()
与dropdownButton()
类似,但是它不使用Bootstrap,因此可以将pickerInput
放入其中。此外,您可以使用animate.css
在下拉列表的出现/消失中添加动画。有关更多详细信息,请查看以下文档的第30页-
https://cran.r-project.org/web/packages/shinyWidgets/shinyWidgets.pdf