我尝试将actionButton与observeEvent一起使用。我的问题是:我可以通过第二次点击按钮来定义不同的操作吗?类似的东西
`observeEvent(input$verlauf,{
if (input$verlauf == 0){input$verlauf <- 1 & renderTable(BDI2())}
else if (input$verlauf == 1){input$verlauf <- 2 & renderTable(BDI2())}
else if (input$verlauf == 2){input$verlauf <- 3 & renderTable(BDI3())}
else if (input$verlauf == 3){input$verlauf <- 4 & renderTable(BDI4())}
else if (input$verlauf == 4){input$verlauf <- 5 & renderTable(BDI5())}
else if (input$verlauf == 5){input$verlauf <- 6 & renderTable(BDI6())}
else {}})`
每次点击actionButton都应该有不同的操作。如何在我的R/shine代码中做到这一点?不起作用
非常感谢:(
derlu
不能增加input$verlauf
的值,但可以创建一个reactiveValues
对象并增加该值。请参阅下面的示例。
library(shiny)
shinyApp(
ui = fluidPage(
actionButton(inputId = "button",
label = "I am a Button. Click me!"),
uiOutput("result")
),
server = shinyServer(function(input, output, session){
# MAKE A REACTIVE VALUES OBJECT HERE. THIS BEHAVES LIKE A LIST, BUT
# CAN TRIGGER REACTIVE COMPONENTS
Button <- reactiveValues(
Click = 0
)
# Update the Button$Click object on each click of input$button
observeEvent(input$button,
{
Button$Click <- input$button %% 8
})
# Take an element of the vector. This is changed every time
# Button$Click changes.
output$result <-
renderUI({
p(c("It's raining tacos.",
"From out of the sky.",
"Tacos.",
"No need to ask why.",
"Just open your mouth",
"and close your eyes...",
"it's raining tacos.")[Button$Click])
})
})
)