闪亮的splitLayout和selectInput问题

时间:2016-10-17 01:43:17

标签: r shiny

当我在R Shiny中组合splitLayout和selectInput时,有一些错误。

无法正确显示选项下拉列表。

我们如何解决这个问题。

请检查可重现的代码。

onNewIntent()

我有8个selectInputs,我想在一行中并排放置。

使用fluidrow不正常,因为列宽只能是整数。

我想知道是否有其他方法可以做到这一点。

2 个答案:

答案 0 :(得分:11)

这是一个潜在的解决方案。下拉菜单中的父div似乎有overflow: auto样式,会阻止下拉菜单。更改为visible会修复此问题。

library(shiny)

server <- function(input, session, output) {

  output$select_1 <- renderUI({
    selectInput("select_input","select", choices = LETTERS)
  })

}

ui <- fluidPage(
  splitLayout(
    uiOutput("select_1"),
    tags$head(tags$style(HTML("
                              .shiny-split-layout > div {
                                overflow: visible;
                              }
                              ")))
  )
)

shinyApp(ui = ui, server = server)

答案 1 :(得分:1)

我尝试了@Xiongbing Jin的解决方案,但这并不能完全为我解决问题,而是将我推向了这个解决方案:

# in ui.R
splitLayout(
  tags$head(tags$style(HTML(".shiny-split-layout > div {overflow: visible;}"))),
  cellWidths = c("0%","50%", "50%"), # note the 0% here at position zero...
  selectInput("A", label = "A LBL",),
  selectInput("B", label = "B LBL")
)