Я хочу поместить блестящую страницу информационной панели в модуль (скажем, для помещения страницы приборной панели в модальный диалог). Но пока dashboardPage находится в модуле, его html зависимости не загружаются нормально. Минимальный пример:
library(shinydashboard)
ui <- fluidPage(
uiOutput(outputId = "modui")
)
server <- function(input, output, session) {
callModule(mod, "mod")
output$modui <- renderUI(modUI("mod"))
}
modUI <- function(id) {
ns <- NS(id)
dashboardPage(
dashboardHeader(),
dashboardSidebar(
sidebarMenu(
id = ns("sidebarmenu"),
menuItem("Menu item1", tabName="m1"),
menuItem("Menu item2", tabName="m2")
)
),
dashboardBody()
)
}
mod <- function(input, output, session) {
observeEvent(input$sidebarmenu, {
print(input$sidebarmenu)
})
}
shinyApp(ui, server)
Когда я запускаю приложение, Chrome выдает следующие ошибки:
DevTools failed to load SourceMap: Could not load content for http://127.0.0.1:5574/app.min.js.map: HTTP error: status code 404, net::ERR_HTTP_RESPONSE_CODE_FAILURE
DevTools failed to load SourceMap: Could not load content for http://127.0.0.1:5574/shinydashboard.min.js.map: HTTP error: status code 404, net::ERR_HTTP_RESPONSE_CODE_FAILURE
В результате sidebarMenu больше не является реактивным вводом. Ошибки исчезают, когда dashboardPage () включается в пользовательский интерфейс основного сеанса (но это также приводит к тому, что вся главная страница становится информационной панелью).
Я попытался написать объект htmlDependency:
dashboard_dep <- htmlDependency(
name = "shinydashboard",
version = "0.7.1",
package = "shinydashboard",
src = "",
script = c("shinydashboard.min.js", "shinydashboard.min.js.map",
"AdminLTE/app.min.js", "AdminLTE/app.min.js.map"),
stylesheet = c("shinydashboard.css",
"AdminLTE/_all-skins.min.css", "AdminLTE/AdminLTE.min.css"),
all_files = TRUE
)
Но, похоже, это не относится к файлам .map. Есть мысли, как решить эту проблему?