gpt4 book ai didi

r - 将 flexdashboard 中的 R markdown 标题链接到应用程序中的页面

转载 作者:行者123 更新时间:2023-12-05 06:55:25 25 4
gpt4 key购买 nike

我有一个使用 flexdashboard 和 shiny 的 R markdown 文档。文档/应用程序有多个页面,我希望能够将 YAML header 中定义的导航栏标题链接到第一页,以便用户在单击标题时感觉被重定向到“主页”页面。

我附上了一个非常简单的 .Rmd 文件示例,它使用 flexdashboard 并且有 2 页。在此示例中,当点击 App title 时,用户应被定向到 Page 1

---
title: "App title"
output: flexdashboard::flex_dashboard
runtime: shiny
---



Page 1
====================================================================================

This is some random text on page 1...

Page 2
========================================================================================

And some even more random text on page 2....

我见过一些示例,其中页面在外部 .yml 文件 (bookdown) 中链接,或者 Logo /标题链接到外部站点,但我找不到如何将导航栏标题链接到部分的示例/R Markdown 文档本身中的页面。

为了增加复杂性:在我的应用程序中,文档用于多个应用程序,因此标题是通过环境变量读入的:

---
title: '`r Sys.getenv("TIER")`'

非常感谢任何帮助!

最佳答案

要使标题作为链接可点击,您可以使用额外的 JavaScript。

<script>
document.querySelector(".navbar-header").innerHTML =
"<a href=\"path_to_destination\" class=\"navbar-brand navbar-inverse\">
My Dashboard
</a>";
</script>

querySelector 查找标题元素并将其替换为自定义元素。在这里,我将其替换为指向 path_to_destination 的链接。您可以看到添加到链接的类名,以根据预定义的类来格式化链接。否则链接的格式与标题不同。

正如您所说,标题基于一些变量,我们可以像在文档的其他任何地方一样插入 R 代码:

<script>
document.querySelector(".navbar-header").innerHTML =
"<a href=\".\" class=\"navbar-brand navbar-inverse\">`r 2+2`</a>";
</script>

关于r - 将 flexdashboard 中的 R markdown 标题链接到应用程序中的页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65357099/

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