Условный стиль текста в блестящем и числовом форматировании

#javascript #shiny

#javascript #блестящий

Вопрос:

Я пытаюсь создать блестящее приложение, в котором, если значение textOutput изменяется выше 20, цвет текстового вывода изменяется на красный, иначе он остается синим. Я не могу получить доступ к javascript для выполнения такого стиля. Кроме того, я был бы признателен, если бы кто-нибудь мог сказать мне, возможно ли изменить формат чисел в numericInput, например, для 10000, 2,4% и т.д., Чтобы числа отображались в этом конкретном формате. Я видел другие блестящие примеры, где формат был изменен для ввода текста, но мне это не нужно.

Ниже приведен простой код, который я пытался написать Java в shiny.

 library(shiny)
    ui <- fluidPage(

                # Can you change numeric format by using javascript? 
                numericInput('num', "Length", value=19),

                textOutput("text"),

            tags$script(HTML("

                     /*Tried getting the textoutput value in javascript!!*/
                     var trigger = document.getElementById('text').innerHTML;

                     /* Tried writing that when value of text change above 20
                     Then the color of the text also changes
                     based on a threshold value condition*/
                     trigger.addEventListener('change', function(){
                                  var target = document.getElementById('text');
                                  var color = parseInt(trigger) > 20 ? 'red' : 'blue';
                                  target.style.color = color;
                          });
                     ")) # Simply not working!!

              )

         server <- function(input, output, session) {
                        output$text <- renderText({
                                            input$num
                             })
            }
       shinyApp(ui = ui, server=server)  
  

Заранее спасибо.