【发布时间】:2019-03-17 10:48:20
【问题描述】:
假设我为多图导出创建了 10 个selectInput 下拉菜单,这些selectInputs 被称为“xaxis_1”、“xaxis_2”、......、“xaxis_10”
对于单个 1 我可以写:
if(!is.null(input$xaxis_1)) { .... do stuff } 在用户没有输入任何名称时停止它运行导出,然后按提交,以避免崩溃。
更一般的,你可以检查一下:
if(!is.null(input[[paste('xaxis', i, sep = '_')]])) { ...}
如何优雅地编写它,以便 1 行代码检查 1:10 输入 [[...]] 中的任何一个是否为空,即 NULL?
输入的 nr 取决于用户想要在每个文件中导出多少个绘图,所以一切都是用lapply(1:input$nrofplots, function(i) { .... } renderUI 结构构建的,我的 if 语句需要具有与 1:n 相同的灵活性
在如下图所示的情况下,按Initiate export 应该会给出sweetalert(已涵盖),表示至少缺少 1 个值
【问题讨论】:
-
req()适合你吗? -
不,如果等式返回任何输入为空,我想发出警告 sweetalert。在我的情况下,n 是灵活的,因为输入的 nr 取决于用户设置生成多少图