Shiny:server.R中函数的反应式布尔变量

时间:2015-06-08 15:30:33

标签: r boolean shiny

我的应用允许用户上传自己的数据集。我有一个检查错误的函数;如果它通过检查应用程序的其他方面可以运行(即直方图,可视化等)。以下是我目前正在尝试的内容:

shinyServer(function(input, output) {
    in_data <- reactive({
        inFile <- input$file1
        if (is.null(inFile)) return(NULL)   
        read.csv(inFile$datapath, as.is=T)
    })

    check <- function(data){
        failed <- T
        error_list <- c()
        #code that runs the check, adds errors to error_list
        if(length(error_list) == 0) failed <- F
    }
    output$check <- renderText({
        if (is.null(in_data())) return("Please upload a data set.")
    check(in_data()) # should change "failed" 
    })

    output$table <- renderTable({
        if (is.null(in_data()) | failed) return() 
        # make the table 
    }) 
})

这个确切的代码不起作用,因为后来尝试检查其值的函数无法找到“failed”。即使我在检查功能之外定义“失败”,它也不是被动的 - 如果我上传一个失败的数据集然后另一个数据集通过,它就不会相应地运行并运行其他功能。我尝试使用reactiveValues(),但无法使用它。有小费吗?

0 个答案:

没有答案