R和Shiny:使用反应函数的输出

时间:2014-07-16 11:26:51

标签: r shiny shiny-server

目前我有一个函数[degtest],它在闪亮的服务器中创建,返回一个列表,

return(list(datatable=datatable, predicttable=predicttable, esttable=esttable)

我希望在函数运行后可以访问此列表,以便我可以使用列表的不同部分单独呈现。

 outlist <- reactive({
   if(is.null(input$file2)){return(NULL)}
   if(input$d2 == 0){return(NULL)}
   with(data = reactdata$degdata, degtest(reactdata$degdata[,input$selectTemp], reactdata$degdata[,input$selectPot],reactdata$degdata[,input$selectWeight], reactdata$degdata[,input$selectTime], input$Temp0))
   })

输入$ file2是我的reactdata(reactdata $ degdata,输入$ d2是一个动作按钮。

我以为我能够引用outlist $ datatable但是R说'对象类型'封闭'不是子集“

1 个答案:

答案 0 :(得分:2)

当你创建一个对象reactive时,你实际上是将它变成一种函数(closure),因此你必须将它用作outlist()而不是{{1} }}。请参阅this类似问题。考虑到你没有provide a reproducible example,你很难回答你的问题,但我认为你的解决方案将类似于outlist