Кто-нибудь имел успех, используя Matomo для отслеживания использования Shiny с приложением Shinydashboard? - PullRequest
0 голосов
/ 08 июля 2019

Я пытался заставить Matomo работать с блестящим приложением, которое использует shinydashboard и особенно dashboardPage, но не может заставить его работать. кто-нибудь добился успеха в этом?

Я пытался использовать код Шона Лоппа (https://shiny.rstudio.com/articles/usage-metrics.html).. Это работает с FluidPage, но не с приборной панелью.

Если вместо использования dashboardPage, как в приведенном ниже коде, я использую FluidPage, я получаю желаемый результат и вижу, как работает трекер.

При использовании этого кода я получаю следующую ошибку:

Error in tagAssert(header, type = "header", class = "main-header") : 
  Expected tag to be of type header

Я попытался вставить тэги $ head (HTML ())) в dashboardHeader () и получить ту же ошибку. Если я размещу его сразу после заголовка приборной панели, я получу:

Error in tagAssert(sidebar, type = "aside", class = "main-sidebar") : 
  Expected tag to be of type aside

Это пример кода с dashboardPage. Работает идентичный код, но с заменой dashboardPage на Fluid.

Буду признателен за любые предложения, которые могут быть у любого.

Спасибо

library(shiny)
library(shinydashboard)

ui <- dashboardPage(
  tags$head(HTML(
    "<script type='text/javascript'>
  var _paq = _paq || [];
    /* tracker methods like 'setCustomDimension' should be called before 'trackPageView' */
    _paq.push(['setDocumentTitle', document.domain + '/' + document.title]);
    _paq.push(['setCookieDomain', '#########']);
    _paq.push(['trackPageView']);
    _paq.push(['enableLinkTracking']);
    (function() {
    var u='###############################';
    _paq.push(['setTrackerUrl', u+'piwik.php']);
    _paq.push(['setSiteId', '9']);
    var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
    g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s);
    })();
    </script>"
    )),
  dashboardHeader(title = "THIS IS A HEADER"),
  dashboardSidebar(),
  dashboardBody(),
  title = "Dashboard example"

)

# Define server logic required to draw a histogram
server <- function(input, output) {


}

# Run the application 
shinyApp(ui = ui, server = server)
...