Je souhaite utiliser bs4Dash
構(gòu)建一個(gè)閃亮的應(yīng)用程序。側(cè)邊欄包含一個(gè)下拉選擇菜單,其中包含長(zhǎng)名稱的項(xiàng)目。打開下拉菜單后,我希望完整的項(xiàng)目名稱可見,即溢出儀表板的主體。默認(rèn)情況下,名稱會(huì)在側(cè)邊欄邊框處剪切 (shiny::selectizeInput
),或者下拉內(nèi)容與側(cè)邊欄邊框右對(duì)齊,并且項(xiàng)目名稱的開頭位于屏幕左側(cè) (shinyWidgets::pickerInput
) dans la mise en page de ma barre latérale. < /p>
Voici à quoi ressemble l'application (mise à jour le 16 décembre 2022)?:
J'ai essayé d'appliquer la solution décrite par flexdashboard
ici,
Mais je n'arrive pas à le faire fonctionner.
Merci pour votre aide !
Voici un exemple reproductible de ma candidature :
# app.R library(shiny) library(bs4Dash) library(shinyWidgets) vec_long_items <- sapply(1:10, function(i) { paste("START", paste(sample(letters, 100, replace = TRUE), collapse = "")) }) shinyApp( ui = dashboardPage( header = bs4DashNavbar( title = "Long items to select", disable = TRUE, controlbarIcon = NULL ), sidebar = bs4DashSidebar( skin = "white", shinyWidgets::pickerInput( inputId = "in1", label = "shinyWidgets::pickerInput", choices = vec_long_items ), shiny::selectInput( inputId = "in2", label = "shiny::selectInput", choices = vec_long_items ) ), body = dashboardBody(tableOutput("out_text")) ), server = function(input, output, session) { output$out_text <- renderTable(data.frame(items = vec_long_items)) }, options = list(launch.browser = FALSE) )
Informations sur ma séance()?:
R version 4.1.0 (2021-05-18) Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 10 x64 (build 19044) Matrix products: default locale: [1] LC_COLLATE=German_Switzerland.1252 LC_CTYPE=German_Switzerland.1252 LC_MONETARY=German_Switzerland.1252 LC_NUMERIC=C LC_TIME=German_Switzerland.1252 attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] bs4Dash_2.1.0 shiny_1.7.2 loaded via a namespace (and not attached): [1] Rcpp_1.0.7 shinyWidgets_0.7.5 digest_0.6.29 later_1.3.0 mime_0.12 R6_2.5.1 lifecycle_1.0.2 xtable_1.8-4 jsonlite_1.8.0 magrittr_2.0.3 [11] cachem_1.0.6 rlang_1.0.5 cli_3.4.0 fontawesome_0.3.0 promises_1.2.0.1 jquerylib_0.1.4 bslib_0.4.0 ellipsis_0.3.2 tools_4.1.0 httpuv_1.6.5 [21] fastmap_1.1.0 compiler_4.1.0 memoise_2.0.1 htmltools_0.5.2 sass_0.4.2
Essayez ce CSS?:
css .os-padding {overflow: visible !important;}"
C'est
body = dashboardBody( tags$head( tags$style(HTML(css)) ),
et
shinyWidgets::pickerInput( inputId = "in1", label = "shinyWidgets::pickerInput", choices = vec_long_items, options = pickerOptions(dropdownAlignRight = TRUE) ),