2017-09-28 1 views

答えて

1

スタックオーバーフローを少しブラウジングした後、私は単純な例How do you pass parameters to a shiny app via URLを見つけ、それを自分のニーズに合わせました。

library(DT) 
library(shiny) 


ui <- bootstrapPage(
    h2("The mtcars data"), 
    textInput("text", "Text", ""), 
    DT::dataTableOutput("mytable") 
) 

server <- function(input, output, session) { 

    observe({ 
    query <- parseQueryString(session$clientData$url_search) 
    print(query) 
    if (!is.null(query[['text']])) { 
     text_string <- query[['text']] 
     DT::selectRows(mytable_proxy, as.numeric(text_string)) 
     updateTextInput(session, "text", value = text_string) 
    } 
    }) 

    output$mytable = DT::renderDataTable({mtcars}) 
    mytable_proxy = DT::dataTableProxy('mytable') 
} 

shinyApp(ui, server) 

だからアプリを実行すると、ブラウザで開くことで、私はGETパラメータを追加することができますし、私は、テキストフィールドに数値を持っていますが、行が選択されません。 http://127.0.0.1:3010/?text=4(あなたの場合、IPとポートは異なる場合があります)。

関連する問題