Запись Если условие внутри DT датируемых опций? - PullRequest
1 голос
/ 04 октября 2019

Извиняюсь за невозможность предоставить воспроизводимый пример, но ниже приведены варианты моего источника данных. В принципе, если кнопка скриншота нажата - я не хочу, чтобы функция прокрутки была включена - в противном случае она должна быть включена. Спасибо за любую помощь или рекомендации! Оператор if изначально оценивается как ложный, но функция прокрутки по-прежнему отключена по умолчанию.

Кроме того, кто-нибудь знает смысл жизни?

 ` options = list(dom = 't', paging = FALSE, ordering = FALSE, 
                               #pageLength = -1, 
                               if(input$screenshot > 0){
                                 scrollY=NULL
                               } else {
                                 scrollY='50vh'
                               }
                               , scrollCollapse = TRUE`

1 Ответ

1 голос
/ 05 октября 2019

Будьте проще. Запишите ваше if условие вне средства визуализации DT, внутри наблюдателя, в реактивную переменную. Кроме того, вместо использования кнопки действия для снимок экрана я бы предложил вам использовать кнопку переключения . Это позволит вам включить и отключить прокрутку, а не просто отключить ее полностью.

# You initialize the table with scrolling enabled
react <- reactiveValues(scrollCondition="50vh")

# Toggle button returns TRUE when enabled and FALSE when disabled. So when screenshots are set to TRUE, we make the scrollY property NULL.
observeEvent(input$screenshot,{
       if(input$screenshot==TRUE){
                 react$scrollCondition <- NULL
       }else{
                 react$scrollCondition <- "50vh'"
       }
})


`options = list(dom = 't', paging = FALSE, ordering = FALSE, 
                               scrollY= react$scrollCondition, 
                               scrollCollapse = TRUE`

Надеюсь, это поможет.

...