r语言 - 观察事件在 2nd 和 3rd 事件上的不同操作



我尝试将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])
})
})
)

最新更新