2
我試圖創建一個簡單的應用程序使用這些功能:嵌套活性表達的閃亮
用戶會選擇「自定義」或「默認」。
如果選擇「默認」,將顯示默認文本。但是,如果選擇「自定義」,用戶將能夠「提交」文本並顯示提交的文本。
我已經寫了一些代碼來做到這一點,但無法在「自定義」情況下同時處理兩個反應式表達式。
下面是代碼:
library(shiny)
ui = navbarPage(
title = 'Text',
tabPanel(
'Custom App',
fluidRow(
radioButtons('radio', 'Select Action', choices = list('Default' = 'Default', 'Custom' = 'Custom'),
selected = 'Default', inline = T),
column(6, textInput('text_given', label = 'Enter Text', value = '')),
actionButton('submit_button', 'Submit'),
textOutput(text)
)
)
)
server = function(input, output, session){
main = reactive({
selected_action = input$radio
if(selected_action == 'Default'){
text_to_show = 'Default Text'
} else{
dataInput = eventReactive(input$submit_button,{
text_to_show = input$text_given
})
}
return(list('text_output' = text_to_show))
})
output$text = renderText(main()$text_output)
}
shinyApp(ui = ui, server = server)
這完美的作品。謝謝 !你可以幫助做到這一點。我想在選擇默認值時隱藏文本字段並提交按鈕,並且只在選擇自定義時才顯示它。這個怎麼做 ? –
沒問題,看我的編輯。希望這可以幫助! – Florian
非常感謝!這很好。只有一個小問題是,如果我選擇自定義,輸入文本並提交,轉到默認,然後回到自定義,上一個輸入的文本仍然存在。如果在點擊提交後消失,那將會很棒。感謝您的幫助。 –