选择一些简单的条件后,一旦单击动作按钮,我想要一个输出数据表。
该代码无需输入操作按钮即可工作。一旦包含observeEvent函数,就不再生成结果。请参见下面的示例代码。
注意:删除行observeEvent(input$gobutton,{和相应的})行将产生正确的输出。
library(shiny)
ui <- fluidPage(
fluidRow(column(6,div(checkboxGroupInput("test1", "Testing buttons",
choices=c("A","B","C"),
selected=c("A","B","C"))))),
hr(),
actionButton("gobutton","Start"),
dataTableOutput("summary_table")
)
server <- function(input,output){
output$summary_table <- renderDataTable({
observeEvent(input$gobutton,{
df=data.frame(col1=input$test1,col2=seq(1,length(input$test1),1))
df
})
})
}
shinyApp(ui=ui, server=server)
Run Code Online (Sandbox Code Playgroud)
换成一个eventReactive:
library(shiny)
ui <- fluidPage(
fluidRow(column(6,div(checkboxGroupInput("test1", "Testing buttons",
choices=c("A","B","C"),
selected=c("A","B","C"))))),
hr(),
actionButton("gobutton","Start"),
dataTableOutput("summary_table")
)
server <- function(input,output){
data <- eventReactive(input$gobutton,{
if(is.null(input$test1)){
return()
}
df <- data.frame(col1=input$test1,col2=seq(1,length(input$test1),1))
df
})
output$summary_table <- renderDataTable({
data()
})
}
shinyApp(ui=ui, server=server)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4769 次 |
| 最近记录: |