闪亮:从闪亮的应用程序中打开新的浏览器选项卡
Posted
技术标签:
【中文标题】闪亮:从闪亮的应用程序中打开新的浏览器选项卡【英文标题】:shiny: open new browser tab from within shiny app 【发布时间】:2013-07-04 08:52:59 【问题描述】:我想在新的浏览器选项卡中打开一个 html 页面。 Here 有人指出我需要 JS 来完成该任务。 假设我想在我闪亮的应用程序中的新选项卡中打开 URL http://www.google.com。我还不熟悉 JS,我不知道在哪里包含哪些代码以及如何从闪亮的应用程序中调用它。我该怎么办?
【问题讨论】:
【参考方案1】:您不应该需要比传统的、闪亮的 HTML 更花哨的东西:
a("test", href="http://google.com", target="_blank")
您只是想在a
标记上设置target
属性,它告诉您的浏览器在哪里打开您创建的这个新链接。
【讨论】:
谢谢,杰夫。但是我错误地认为这个简单的方法会创建一个将在新选项卡(或窗口)中打开的 HTML 链接?我想要的是别的东西:在应用程序中,您可以按下一个操作按钮,该按钮将触发收集一些输入设置(来自复选框等)的过程并在后台生成一个新的 HTML 文档。现在我可以简单地返回一个指向该新 HTML 文档的链接并让用户单击它。我想要的是在报告生成完成后以编程方式打开这个新的 HTML 文档。提前致谢! @MarkHeckmann 我遇到了类似的问题,我想根据用户操作编写报告,然后将该 html 文件存储在工作目录中。我遇到的问题是我可以编织报告,但是我无法自动在新选项卡中显示报告,所以我只想编织并在新选项卡中呈现。您找到问题的解决方案了吗? @RickTastic:这是很久以前的事了,恐怕我不记得我需要它的项目,也不记得我最后做了什么,对不起!【参考方案2】:我遇到了类似的问题,所以我想我会添加我的解决方案。
我想在 tabPanel 中有链接,但 Shiny 会打开一个新的空白页面并有一个链接,而不是仅仅单击 tabPanel 并打开一个新页面。使用标准引导 CSS 的解决方法是使用 navbarMenu,然后将链接放在 tabPanel 中。
navbarMenu("Links",
tabPanel(
a("Google", href="https://google.com", target="_blank")
)
【讨论】:
【参考方案3】:我有同样的问题,并得出以下解决方案。这是一种解决方法,但它仍然有效。
@MarkHeckmann:要从正在运行的 Shiny 应用程序启动一个新的 BrowserTab,我使用了一个动作按钮来触发函数 browseURL(...)
library(shiny)
ui <- fluidPage(
titlePanel("Browser test"),
sidebarLayout(
sidebarPanel(
shiny::actionButton(inputId = "gen_report", label = "Generate Report")
),
mainPanel( )
))
server <- function(input, output)
observeEvent(input$gen_report,
browseURL("https://www.r-project.org")
)
shinyApp(ui = ui, server = server)
@RickTastic:此过程也适用于自行生成的 HTML 报告。通过列出一个 html 页面而不是一个网址。
browseURL("test.dashboard.html")
或 browseURL("path to html file")
【讨论】:
尝试将此添加到我闪亮的应用程序中,收到错误:Remove browseURL calls; browseURL does not work in deployed applications.
我不知道。 Enventuell这个解决方案可以帮助你***.com/questions/41426016/…如果这对你有帮助请告诉我以上是关于闪亮:从闪亮的应用程序中打开新的浏览器选项卡的主要内容,如果未能解决你的问题,请参考以下文章