Уравнения MathJax в локальном рендеринге приложения Shiny, но прерываются при развертывании в Shinyapps.io

#r #shiny #mathjax #shinyapps

#r #блестящий #mathjax #shinyapps

Вопрос:

Вот блестящее приложение, которое отображает уравнение LaTeX с помощью MathJax. Когда это приложение запускается локально, отображаются все три уравнения (для целей тестирования это уравнения в пределах a renderTable , a renderText и simply p ).

Однако при развертывании в Shinyapps.io , единственное отображаемое уравнение — это то, которое вызывается в p теге.

 library(shiny)

eq <- "$$ \frac{numerator}{denominator} \!$$"

ui <- {
    fluidPage(
        withMathJax(),
        # simple tableOutput - not rendered
        tableOutput('table'),
        
        # simple textOutput - not rendered
        textOutput('text'),
        
        # no actual rendering required - works properly
        p(eq)
    )
}

server <- function(input, output, session) {

    output$text <- renderText(eq)
    
    output$table <- renderTable({
        data.frame(
            v1 = 'simple equation',
            v2 = eq)
    })
}

shinyApp(ui, server)
  

Тот факт, что уравнение в p теге отображается правильно, похоже, исключает идею о том, что есть какая-то проблема с запросами GET на сервер для Javascript MathJax (вы можете видеть, как проходят запросы).

Я также удалил кэшированные данные из браузера локально (протестировано в Firefox и Chrome), и уравнения по-прежнему отображаются нормально.

Интересно, что проверка локальной версии показывает соответствующие элементы HTML (например, td для таблицы), заключенные в a <div class='MathJax_Display'> , тогда как этот div не найден в Shinyapps.io версия.

В журналах нет проблем, которые появляются в журналах; вот информация о журнале (обратите внимание на версию R; я еще не смог протестировать на R 4.0.2):

  • Версия сервера: 1.8.4.1-20
  • Язык: en_US.UTF-8
  • Версия R: 3.6.0
  • блестящая версия: 1.5.0
  • версия rmarkdown: (отсутствует)
  • версия httpuv: 1.5.4
  • версия knitr: (отсутствует)
  • версия jsonlite: 1.7.0
  • Версия RJSONIO: (отсутствует)
  • версия htmltools: 0.5.0
  • Использование pandoc: /opt/connect/ext/pandoc2
  • Использование jsonlite для обработки JSON