我想把我的全部内容sidebarLayout
放在服务器端使用renderUI()
,像这样:
library(shiny)
library(bslib)
ui <- fluidPage(
uiOutput("sidebarpanel")
)
server <- function(input, output, session) {
output$sidebarpanel <- renderUI({
sidebarLayout(
sidebarPanel(width = 3,
selectizeInput("country", "Country:", choices = c("a", "b"))
),
mainPanel(width = 9,
page_fillable(
layout_columns(height = 200,
card(card_header("card1")),
card(card_header("card2"))
)
)
)
)
})
}
shinyApp(ui = ui, server = server)
如果我将我的sidebarpanel
块保持在 UI 端,它看起来很好:
library(shiny)
library(bslib)
ui <- fluidPage(
sidebarLayout(
sidebarPanel(width = 3,
selectizeInput("country", "Country:", choices = c("a", "b"))
),
mainPanel(width = 9,
page_fillable(
layout_columns(height = 200,
card(card_header("card1")),
card(card_header("card2"))
)
)
)
)
)
server <- function(input, output, session) { }
shinyApp(ui = ui, server = server)
是否有renderXXXX
我应该使用的功能来代替renderUI
保留卡片的样式?