假设我有两个动作按钮。当我按" Go!"时,我想计算一个值,然后按下第二个操作按钮,我想在另一个计算中使用计算值。此代码不起作用,并给出这样的错误:
"警告:ObserveEventHandler中的错误:未找到对象'Coeff'
为什么它不给我答案?
library(shiny)
ui <- fluidPage(
actionButton(inputId = "AB", label = "Go!"),
actionButton(inputId = "AB1", label = "Calculate!")
)
server <- function(input, output, session) {
observeEvent(input$AB,{
coeff <- sum(1:15)
})
observeEvent(input$AB1,{
calculatedValue <- coeff*10
})
}
shinyApp(ui = ui, server = server)
您最好将reactiveValues
用作内部observeEvent
不知道coeff
是什么,因为它仅认为它是局部变量,因此请在下面尝试此代码。您可以使用v$coeff
和v$calculatedValue
library(shiny)
ui <- fluidPage(
actionButton(inputId = "AB", label = "Go!"),
actionButton(inputId = "AB1", label = "Calculate!"),
textOutput("myValue")
)
server <- function(input, output, session) {
v <- reactiveValues()
observeEvent(input$AB,{
v$coeff <- sum(1:15)
})
observeEvent(input$AB1,{
v$calculatedValue <- v$coeff*10
})
output$myValue <- renderText( v$calculatedValue)
}
shinyApp(ui = ui, server = server)