0

我正在尝试使用 DT 函数从 RShiny 上的反应函数显示表格,但我似乎无法使其工作。我能够使用普通的渲染表显示表格,但是在使用 DT 函数时,我不断收到错误“参数长度为零”。

下面的代码正在运行,并在我的仪表板上显示结果。ticketlivedata() 基本上是从我们公司的数据库中获取数据。由于机密性,我无法显示该功能的内容。

filtr_data <- reactive({
fdt <- ticketlivedata()
       
if( input$ticketsearch != ""){
#Will use this filter when the text box input input$ticketsearch is not blank
fdt <- fdt %>% filter( request_id %in% idlist) 
          
else {
#Will use this filter when the text box input input$ticketsearch is blank
fdt <- fdt %>%
filter( request_status %in% input$rstat ) %>%
filter( criticality %in% input$crits ) %>% 
filter( date_required >= input$datereq[1] & date_required <= input$datereq[2] ) 
}   
        
return(fdt)
        
})

#Output table
output$table <- renderTable({ 
req( input$rstat )
data.frame(c(filtr_data() )) 
},bordered = TRUE, width = NULL,striped = TRUE,sanitize.text.function = function(x) x)

但是当我用下面的 DT 函数替换渲染表时,它会显示错误。我需要使用 DT 功能,因为它是客户要求。

output$table <- DT::renderDataTable(
DT::datatable(filtr_data(),
options = list(pageLength = 10, scrollX = TRUE, scrollY = TRUE), escape = FALSE),server = FALSE
)  

请注意,我只放置了我关心的代码部分,因为整个代码本身很长并且可能包含一些机密信息。

4

0 回答 0