【问题标题】:shinydashboard some Font Awesome Icons Not Workingshinydashboard 一些令人敬畏的字体图标不起作用
【发布时间】:2015-12-17 14:53:22
【问题描述】:

当使用shinydashboard 时,我发现有些图标似乎可以工作,而有些则不能。在下面的示例中,电池充满的图标不起作用,而时钟-o 图标工作正常。我无法弄清楚为什么会发生这种情况。

library(shiny)
library(shinydashboard)

header <- dashboardHeader(title="Some Icons Not Working?")

# No sidebar --------------------------------------------------------------

sm <- sidebarMenu(

  sm <- sidebarMenu(
    menuItem(
      text="asdf",
      tabName="asdfasdf",
      icon=icon("battery-full")),
    menuItem(
      text="qwer",
      tabName="qwerqwer",
      icon=icon("clock-o"))
  )
)

sidebar <- dashboardSidebar(sm)

# Compose dashboard body --------------------------------------------------

body <- dashboardBody(

  tabItems(

  )
)

# Setup Shiny app UI components -------------------------------------------

ui <- dashboardPage(header, sidebar, body, skin="black")

# Setup Shiny app back-end components -------------------------------------

server <- function(input, output) {


}

# Render Shiny app --------------------------------------------------------

shinyApp(ui, server)

【问题讨论】:

标签: r shiny font-awesome shinydashboard


【解决方案1】:

好的,我认为4.4版本的新版本没有更新。您可能可以请求shiny 团队更新他们,他们会很容易地做到这一点。或者,您可以自己下载并替换之前的内容...

1. 前往Font Awesome download page 获取

2.找到您安装shiny 软件包的font awesome 文件夹。这应该是这里~\Documents\R\win-library\3.1\shiny\www\shared\font-awesome

3. 用新内容替换此文件夹的内容(如果需要,可以删除以前的内容)。下面是我放在那里的

4. 现在您的应用应该可以正常使用新字体了

【讨论】:

  • 注意:我认为这个解决方案不适用于最新版本的 fa github.com/rstudio/shiny/issues/1966
  • 好吧,这张票是从 3 年前开始的。很多东西都变了
  • 还有其他方法可以解决这个问题吗?
  • 你可以从 github 上的 shiny ping 那些家伙,并要求他们将其发布到开发版本 github.com/rstudio/shiny/issues
  • @PorkChop 我正在使用 fa 的专业版。您的解决方案在本地非常适合我,但当我将应用程序部署到 shinyapps.io 时却不行。 (请注意,我确实在我的应用程序的 www 文件夹中包含了我的 pro font-awesome 目录)。好像没有办法告诉icon()函数查看本地版本的font-awesome
【解决方案2】:

这是一个较老的问题,但到 2020 年 7 月,我的问题仍然存在。我在 github issues page 中找到了解决方案。诀窍是确保您正在查看正在调用的 Font Awesome Shiny 版本中的图标库。目前(同样是 2020 年 7 月)版本是 4.7。 All of these icons 目前工作。

另一种选择是在应用的 ui 函数中使用以下代码调用您想要的 fontawesome 版本(此解决方案最初发布 here):

tags$style("@import url(https://use.fontawesome.com/releases/v5.7.2/css/all.css);")

【讨论】:

    【解决方案3】:

    对于那些 2021 年的新人来说,这个 icon ... 不存在错误是由于 Font Awesome 将其图标名称更改为 4 到 5 之间(参见 background here)。以下是不需要标签样式的解决方案。

    如果您收到此错误消息,

    此 Font Awesome 图标 ('{youriconname}') 不存在:

    * 如果提供自定义html_dependency,则可以使用verify_fa = FALSE 停用这些name 检查

    那么,您可以:

    1. 拥抱变化并重命名您的图标,查看库link to 5.1.5 for example,为您的匹配找到一个新名称。在我的情况下,它正在将 icon('dashboard') 更改为 icon('tachometer-alt')。使用您的旧名称进行搜索,然后查看免费的、未变灰的图标以寻找替代名称。

    2. 使用@samssann 来自shinydashboardissue 373 的这个有用的解决方法

      1. verify_fa = FALSE 参数添加到shiny::icon()
      2. 使用shiny::icon("clock")fontawesome::fa("clock")

    附:您可能会发现图标仍然显示在您的应用程序上,尽管出现错误,因为有一个垫片可以插入 4 到 5。请参阅 @jcheng's answer 此处来自闪亮问题 #1966。

    【讨论】:

      【解决方案4】:

      对我来说,在 2020 年 10 月,解决方案是在第一个“fa”之后添加一个“s”,如 fa fa-caret-upfas fa-caret-up,因为它是字体真棒图标的新语法。

      【讨论】:

        猜你喜欢
        • 2019-09-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-08-14
        • 2021-03-06
        相关资源
        最近更新 更多