Я создаю блестящее приложение.для расчета показателя риска, когда пользователь будет загружать входной файл и выбирать входные данные, такие как этнические группы, тип расчета показателя и заболевания.После того, как все входные данные выбраны и файл загружен, мое приложение.будет запущен, когда пользователь нажмет на кнопку действия , и будут отображены выходные данные, такие как график и датафрейм
. Я использую наблюдайте событие , чтобы управлять моим приложением для ненужного запуска ( множественныйhandleExpr с одним eventExpr ), и это моя сокращенная версия кода.Прошу прощения за мой код, который не воспроизводится.
observeEvent(input$action,{
isolate(system2("bash_script/plink.sh",args = c(input$file$datapath,input$type,input$sum_stat,input$Disease,input$Ethnic,input$Ref)))
output$table_score <- renderDataTable({
percentile <- read.csv("../output/score_percentile.csv",header = T, sep = "\t")
}, selection = "single")
output$table_variant <- renderDataTable({
varaints_in_sample <- fread("../output/summary.csv", header = T, drop = 1)
})
#Plot Graph
output$plot <- renderPlot({
s <- input$table_score_cell_clicked
plot("../output/score_percentile_plot.csv",s,"analysis")
})
})
Моя проблема в том, что , когда я запускаю приложение в первый раз, все под контролем. Однако , если я хочу выбрать новый вход.например, я изменяю исходную болезнь от болезни сердца к другой болезни.мое приложение.будет вызван без необходимости, хотя я НЕ нажал на кнопку действия.
Итак, есть ли способ использовать наблюдать за событием с одним evenExpr для нескольких дескрипторовExpr
Спасибо всем за помощь!