私の現在の光沢のあるコードに問題があります。 与えられた関数の結果に応じて動的な数のタブを生成する必要があります(その部分は正常に動作します)。次に、これらのタブの入力を、例えばrenderTextの他のループで生成したいと思います。しかし、私の生成したrenderTextのtextOutputの最終出力は、常にループの最後のrenderTextの1つです。それはrenderText私はちょうど問題を回避することができる場所、私はプロットとテーブルの多くをレンダリングしようとするとcouldnのためにそれは重要ではないかもしれませんがR光沢のある動的なタブ番号と入力の生成
library(shiny)
library(shinydashboard)
ui <- pageWithSidebar(
headerPanel("xxx"),
sidebarPanel(),
mainPanel(
uiOutput("multipleUI")
)
)
server <- function(input, output) {
output$multipleUI <- renderUI({
tabs <- list(NULL)
for(i in 1:5){
tabs[[i]] <- tabPanel(title = paste0("tab ",i),
textOutput(paste0("out",i)), # prints j as 5 in all tabs
paste0("local out ",i)) # prints i as current loop value for each tab)
}
do.call(tabBox,tabs)
})
observe({
for(j in 1:5){
txt = paste0("generated out ", j)
print(txt) # print with current j
output[[paste0("out",j)]] <- renderText({txt})
}
})
}
shinyApp(ui, server)
:ここ
は、アイデアの小さな一例ですそこの回避策を考えないでください。
私は助けていただきありがとうございます!
編集:私は小さな作業例
「ui.R」と「server.R」、または「app.R」のコード全体を投稿して問題を可視化することはできますか? –
はい、少なくとも 'tabBox'を知らなければなりません。 – BigDataScientist
@ GauravBansal私は小さな作業例を示すようにコードを更新しました:) –