2016-08-02 6 views
0

app.Rというファイルに以下のようなシンプルなRシャイニーコードがあります。このコードを実行すると、daterange6daterange12は表示されません。しかし、downloadButton行のいずれかをuiにコメントすると、daterange6daterange12の両方がうまく表示されます。何故ですか?downloadButton他のシャイニー要素が消える原因

library(shiny) 
library(shinydashboard) 

ui <- dashboardPage(
    dashboardHeader(), 
    dashboardSidebar(
    sidebarMenu(
     menuItem('6 Month', tabName='6M'), 
     menuItem('12 Month', tabName='12M') 
    ) 
), 
    dashboardBody(
    tabItems(
     tabItem(tabName='6M', 
     h1("6 Month"), 
     sidebarLayout(
      sidebarPanel(width=3, fixed=T, 
      downloadButton('downloadData6', 'Download Data'), 
      uiOutput('daterange6') 
     ), 
      mainPanel() 
     ) 
    ), 
     tabItem(tabName='12M', 
     h1("12 Month"), 
     sidebarLayout(
      sidebarPanel(width=3, fixed=T, 
      downloadButton('downloadData6', 'Download Data'), 
      uiOutput('daterange12') 
     ), 
      mainPanel() 
     ) 
    ) 
    ) 
) 
) 

server <- function(input, output, session) { 
    output$daterange6 <- renderUI({ 
    dateRangeInput(inputId='daterange6', 
     label='Select Period', 
     min="2002-01-01", max="2010-01-01", 
     start = "2002-01-01", end = "2009-01-01", 
     startview='year' 
    ) 
    }) 

    output$daterange12 <- renderUI({ 
    dateRangeInput(inputId='daterange12', 
     label='Select Period', 
     min="2002-01-01", max="2010-01-01", 
     start = "2002-02-01", end = "2009-12-01", 
     startview='year' 
    ) 
    }) 
}  

shinyApp(ui, server) 

答えて

0

あなたの問題はIdに関連しているようです。 downloadButtonのIDが同じ場合は、名前を変更してください。

同じIDを持つ2つの要素が同時にレンダリングされないようにすることができない限り、このような予期しない動作を避けるために、常に各要素に固有のIDを割り当ててください。

+0

ありがとうございます!自分自身でエラーをキャッチする必要がありました。 –

関連する問題