【发布时间】:2017-02-21 17:51:29
【问题描述】:
在 Shiny 中,如何链接到不在应用 www 文件夹中的图像或 css 文件?
情况是我有几个共享公共代码的应用程序,但需要被视为不同的应用程序。同时我希望它们具有相似的样式,因此我想链接到不特定于应用程序的图像和 css 文件。
我知道链接到图像和 css 文件的唯一方法是将它们放在 app 目录中名为 www 的文件夹中。但这意味着每个应用都需要一份文件副本,因为每个应用都有自己的 www 文件夹。
在运行应用程序时,我注意到 Shiny 本身链接到名为 shared/ 的子文件夹中的文件,但我还没有找到该文件夹的位置。我可以把我的自定义文件也放在那里吗?
想到从 www 文件夹到一个公共位置的符号链接,但我宁愿不必这样做。我也知道我可以在 html 中内联包含 css 样式,但这是我要避免的另一件事。
【问题讨论】:
-
你是如何部署的?您可以使用完整的 URL 链接到图像和 CSS 文件。您必须为所有应用程序硬编码相同的路径。不确定这个问题是否真的是 Shiny 所特有的,无论如何你是如何描述它的。您将如何在不同网站之间共享任何数据。
-
使用Shiny Server,在R studio启动时也必须在开发过程中工作。这不是传统的 Web 服务器,我不知道如何指定文档根目录和别名等内容。这些文件必须在同一个域下,因为我刚刚意识到我还想部署常见的 javascript 文件。
-
我认为你不能...从磁盘访问文件的唯一方法是在 www 文件夹中。
-
@Stophface,似乎很容易错过,但实际上有一个功能可以做到这一点,请参阅下面的答案:-)