如果在R Shiny中没有上传文件,如何显示消息?

时间:2017-10-09 16:42:23

标签: r shiny modal-dialog

如果用户忘记上传标签文件,我想显示一个modalDialog。但是,我的modalDialog永远不会出现。有什么建议?谢谢!

server.R:

fluidPage(title = "Segmentation App", theme = shinytheme("spacelab"),

navbarPage("Segmentation", id = "allResults",
    tabPanel(value ='inputData', title = 'Data Import',
        verticalLayout(
              h4("Import labels for the independent variables"),
              fileInput(inputId="inFile2", "Choose a CSV File",
                          accept = c(
                          "text/csv",
                          "text/comma-separated-values,text/plain",
                          ".csv"
                        )
              ),

              checkboxInput("header2", "Header", TRUE),
              br(),
              actionButton("act_next", strong("Next!"))
        )
    ),

    tabPanel(value ='selVars', title = 'Data Preparation',
             verticalLayout(
             )
    )

ui.R:

:interval

) )

要加载的CSV文件示例: enter image description here

1 个答案:

答案 0 :(得分:0)

默认情况下,

eventReactive会对其事件表达式进行req检查。如果文件尚未上传且input$inFile2为空,则在调用labels()后不会评估其他反应式表达式。所以模态代码甚至都不会运行。

您可以将labelseventReactive更改为reactive,或在ignoreNULL = FALSE args中指定eventReactive。并确保在input$inFile2为空时返回null。