gpt4 book ai didi

r - 如何在 Shiny 的仪表板应用程序中包含远程 JavaScript 文件?

转载 作者:行者123 更新时间:2023-12-04 10:33:02 40 4
gpt4 key购买 nike

如何使用 shinydashboard 在我的应用程序中包含远程 JS 文件?我知道有includeScript功能。我试过

...

# using shiny dashboard
ui <- dashboardPage(

includeScript("http://the.path.to/my/js-file.js")

dashboardHeader(
title = "My title",
titleWidth = 400
),

...

这会导致错误:
Error in tagAssert(header, type = "header", class = "main-header") : 
Expected tag to be of type header

我尝试在其他地方调用电话,将其与 tags$head 结合使用,将JS文件存储在本地并使用本地路径引用加载它,但无济于事。

所以我被以下问题困住了?
  • 我真的可以使用includeScript吗?有一个远程资源的路径?
  • 我需要在哪里放置加载 JS 文件的指令(以及 JS 文件需要驻留在哪里)?

  • @daattali 提出了一个解决方案,用于使用 tags$head 的纯粹基于 Shiny 的实现(无 Shiny 仪表板)。 ,但这似乎不适用于shinydashboard。

    最佳答案

    您可以使用 src 包含远程 JS 文件。 script 的参数标签

    library(shiny)
    jsfile <- "https://gist.githack.com/daattali/7519b627cb9a3c5cebcb/raw/91e8c041d8fe4010c01fe974c6a35d6dd465f92f/jstest.js"

    runApp(shinyApp(
    ui = fluidPage(
    tags$head(tags$script(src = jsfile))
    ),
    server = function(input, output) {
    }
    ))

    编辑:好的,所以您希望它与 Shiny 的仪表板一起使用。为什么你的方式行不通是有道理的。查看 dashboardPage 的文档.第一个参数是 header .您不能只是开始提供要包含的标签/UI 元素。 includescript 或任何其他此类元素应放在dashboardBody 中。例如
    library(shiny)
    library(shinydashboard)
    jsfile <- "https://gist.githack.com/daattali/7519b627cb9a3c5cebcb/raw/91e8c041d8fe4010c01fe974c6a35d6dd465f92f/jstest.js"

    runApp(shinyApp(
    ui = dashboardPage(
    header = dashboardHeader(),
    sidebar = dashboardSidebar(),
    body = dashboardBody(
    tags$head(tags$script(src = jsfile))
    )
    ),
    server = function(input, output) {
    }
    ))

    关于r - 如何在 Shiny 的仪表板应用程序中包含远程 JavaScript 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32281051/

    40 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com