You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Shiny应用设置navbarPage标题为图片时无法正常显示如何解决

问题原因

Shiny属于Web应用框架,启动后会在本地启动一个临时Web服务,浏览器只能通过该服务的资源规则请求静态文件:默认只有Shiny应用根目录下www文件夹内的文件会被托管为可访问的静态资源。你代码中直接填写本地桌面的绝对路径,浏览器无法跨权限读取本地文件系统中的对应图片,因此出现预留了展示位置但图片加载失败的问题。

修复步骤

  • 在你当前Shiny脚本(单文件app.R、或者拆分的ui.R/server.R都适用)所在的文件夹下,新建一个命名为www的文件夹,这是Shiny默认的静态资源托管目录,名称必须为全小写的www。
  • 将你需要使用的tafn_logo.png图片移动到刚才新建的www文件夹中。
  • 修改UI代码里img标签的src参数,直接写图片文件名即可,不需要加www前缀,也不需要写本地绝对路径。

修改后完整UI代码

# header UI
ui <- navbarPage(title = div(img(src="tafn_logo.png",
                                 height = 60,
                                 style = "margin-top: -14px; padding-right:10px;padding-bottom:10px")),
                 selected = "home",
                 theme = bs_theme(
                     bg = "white",
                     fg = "#ed7117",
                     base_font = font_google("Prompt"),
                     code_font = font_google("JetBrains Mono")),
                 fluid = TRUE,
                 home)

补充说明

如果你需要对静态资源做分类管理,可以在www文件夹下新建子文件夹,比如创建img子文件夹存放所有图片资源,此时对应的src参数修改为src="img/tafn_logo.png"即可。


内容的提问来源于stack exchange,提问作者Ahmet Atilla Colak

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 20:15:02