如何修复闪亮和DT中的错误消息“必须具有长度”

时间:2019-12-16 18:11:04

标签: r shiny reactive dt

我正在开发一个包含传单地图和DT数据表的应用程序。我将两者都设置为在地图和表格中都有初始数据,然后如果在下拉列表或数据范围中选择了特定的用户名,则进行更新。

地图很好。但是,在加载应用程序时,我收到一条错误消息,该消息以亮红色显示,这表明数据表数据存在问题...但是随后数据确实加载了(我假设在完成反应式组件加载之后

我很想使这个烦人的红色错误消失,请您帮忙

    output$customer_table <- renderDT({ customer_data%>%
    select(Customer, Associate, Date, Travel)%>%
        datatable( extensions = 'Buttons', 
                   options = list(
                       dom = 'Bfrtip',
                       pageLength = 35,
                       buttons = c('copy', 'csv', 'excel', 'pdf', 'print')),
                   colnames = c('Customer', 'Associate', 'Date', 'Travel'))})

这具有未经过滤的初始数据,错误消息中建议的长度为269行。我使用以下反应式组件(从日期输入中提取日期,它们恰好在表绘制完毕后会根据选择器进行适当调整,因此它们是正确的)。开始日期和结束日期由input$date[1] & Date < input$date[2]

描述
    newData <- reactive({
    all = unique(map_data$associate)
    map_data <- map_data%>%
        filter(Date > input$date[1] & Date < input$date[2])%>%
        filter(
            if (input$associate == "All") {
                Associate %in% all
            } else {
                Associate==input$associate
            }
        ) 

})

然后将这些数据传递到反应性表中,并通过以下方式输出到应用程序:

    output$customer_table <- renderDT({ newData()%>%
        select(Customer, Associate, Date, Travel)%>%datatable( extensions = 'Buttons',
                                                       options = list(
                                                           dom = 'Bfrtip',
                                                           pageLength = 35,
                                                           buttons = c('copy', 'csv', 'excel', 'pdf', 'print')),
                                                       colnames = c('Customer', 'Associate', 'Date', 'Travel'))})

这是我在地图打开时收到几秒钟的消息,但表格尚未呈现enter image description here

我对最终的布局并不感到沮丧,它看起来不错,但是在初始加载过程中出现此错误消息是可怕的,我希望它消失。而且,如果在管理表数据方面存在潜在的缺陷导致这一问题,我很想知道如何解决它。谢谢您的帮助

0 个答案:

没有答案