尝试格式化数据表后,整个闪亮的应用程序变成白色

时间:2019-06-19 15:18:28

标签: r shiny dt

由于某些原因,在此特定示例中尝试向我的数据表对象添加formatStyle会导致整个应用无法正常工作。没有错误消息,只是所有输出均不显示任何内容。我唯一看到的就是按钮和用户输入。

我尝试了两种不同的方法来完成我想要的。两种方法都不会产生错误消息,并且输出白色。

我使用一个函数在应用程序内创建数据表。

create_platform_table <- function(count_platform, row_name) {

   background <- "value == 'No Platform' ? '#5EDD6B' : value != 'else' ? '#FFBF33' : ''"
   class(background) <- "JS_EVAL"

   my_vals <- as.character(unique(count_platform()$PLATFORM))
   my_colors <- ifelse(my_vals == 'No platform', 'red', 'blue')

   data <- count_platform[,c('PLATFORM', 'Population')]

   dat <- datatable(data, selection = list(mode = 'single', target = 'cell'),
                    options = list(
                      rowCallback = JS("function(r,d) {$(r).attr('height', '15px')}")),
                    callback = JS(gsub("\n", "", paste0("table.on('click.dt', 'td', function() {
                                                        var row_=table.cell(this).index().row;
                                                        var col=table.cell(this).index().column;
                                                        var rnd= Math.random();
                                                        var data = [row_, col, rnd];
                                                        Shiny.onInputChange(", row_name, ",data );
 });"))) ) %>%
     formatStyle('PLATFORM', target = 'row', 
                 backgroundColor = styleEqual(my_vals, my_colors))

   return(dat)

}

上面的代码没有%>%formatStyle部分,运行正常。

这让我感到困惑,因为我在另一个数据表上使用了formatStyle就好了。最奇怪的是,在这里尝试使用formatStyle会停止其他与我要生成的数据表输出无关的输出。

我在做什么错?还是这是一个奇怪的错误?

0 个答案:

没有答案