我有一個sidebarLayout
應用程序,其中我設置了按鈕來添加和刪除sidebarPanel
中的tabPanel
s。但是,我無法弄清楚如何自定義這些tabPanel。我的代碼如下:如何自定義tabPanel添加通過點擊閃爍的按鈕
library(shiny)
ui <- fluidPage(
sidebarLayout(
sidebarPanel(width = 3, fixed=T,
h3("L2 Machine"),
actionButton('moreL2', tags$b('Add L2')),
actionButton('lessL2', tags$b('Remove L2')),
uiOutput('panelset'),
tabPanel("L2panel",
numericInput(inputId='L2amount', 'Select L2 Amount', value=0),
selectInput(inputId='L2type', 'Select L2 Type', c('Percent', 'Absolute')),
uiOutput('L2daterange')
)
),
mainPanel(
verbatimTextOutput('L2a'),
verbatimTextOutput('L2t')
)
)
)
server <- function(input, output) {
output$L2a <- renderPrint(input$L2amount)
output$L2t <- renderPrint(input$L2type)
output$panelset <- renderUI({
n <- seq(max(input$moreL2 - input$lessL2 + 1, 1))
tabList <- lapply(paste("Pan", n), tabPanel)
do.call(tabsetPanel, tabList)
})
output$L2daterange <- renderUI({
dateRangeInput(inputId='L2daterange',
label='Select Adjustment Period',
start='01-01-2010', end='01-12-2015'
)
})
}
shinyApp(ui, server)
目前,我有numericInput()
,selectInput()
和uiOutput()
內tabPanel()
。相反,我希望通過單擊「添加L2」按鈕創建的每個tabPanel
擁有它自己的一組numericInput
,selectInput
和uiOutput
。
謝謝,@UnnamedUser!這工作,你的解釋是出色的! –