【问题标题】:Font awesome icon does not show字体真棒图标不显示
【发布时间】:2018-02-16 23:11:55
【问题描述】:

我正在开发环境 (localhost) 中使用 Angular 4。我通过 npm 安装了很棒的字体并添加了:

"./node_modules/font-awesome/css/font-awesome.css",

到我的样式脚本。

当我在浏览器中查看我的图标时,一切正常:

但我的图标没有出现在页面上,只是一个空方块。我做错了什么?

【问题讨论】:

  • 我已经直接在 index.html 中添加了链接,它对我有用
  • 你为什么要专门添加 css 文件,将 npm 包包含到 angular 并让它处理并将该包包含在你的应用程序中。
  • 检查字体颜色
  • 字体颜色没问题。 @Wasif Khan 你是什么意思将它包含在角度包中。据我所知,这是一种如何将 css 包含在角度中的方式。

标签: javascript angular font-awesome


【解决方案1】:

它的工作代码:

npm install font-awesome --save

在 .angular-cli.json 中添加 font-awesome 链接:

"../node_modules/font-awesome/css/font-awesome.css"

在 html 文件中

<i class="fa fa-cog fa-spin"></i>

【讨论】:

  • 我需要从 Angular cli 痛风,我正在使用 webpack 配置。无论如何,我以与添加其他一些正常工作的样式相同的方式将其添加到 webpack 样式中。在我的帖子中你可以看到 HTML 检查器,一切看起来都很好,字体在那里,我不知道为什么它没有正确呈现。
  • 如果你使用 webpack 在 index.html 中添加 font-awesome 样式表:@Milos
  • 我试过这个。它没有帮助。它在检查器中显示字体,但不渲染它。
【解决方案2】:

如果您使用的是免费版本。试试这个..

首先删除fortawesome registry & authToken

npm config delete "@fortawesome:registry"
npm config delete "//npm.fontawesome.com/:_authToken"

然后安装包

npm install --save-dev @fortawesome/fontawesome-free

安装包后,在你的 angular.json 文件中添加以下代码

   ......      
    "styles": [
    ......
    "node_modules/@fortawesome/fontawesome-free/css/all.css"
    ],
    "scripts": [
    ....
    "node_modules/@fortawesome/fontawesome-free/js/all.js"
    ],
    .....
    

注意:这些块中有两次(样式/脚本)。 同时添加

【讨论】:

    【解决方案3】:

    我曾尝试在 angular.json 中包含 font-awesome CSS 和 js,但它不起作用。 Font-Awesome 团队为 Angular 制作了一个很棒的字体组件,可供所有想要在 Angular 项目中集成图标的人使用。在为 font-awesome 安装官方的 Angular 组件之前,我们必须检查兼容性。对于 Angular 10,我们必须为 angular 安装 0.7.x 版本的 font-awesome 组件。

    $ npm install @fortawesome/angular-fontawesome@<version>
    

    字体 Awesome 中的图标被分成不同的包,这样我们就可以只为我们的项目安装所需的图标。这有助于减小 font-awesome 包的大小。

    $ npm i --save @fortawesome/fontawesome-svg-core
    $ npm i --save @fortawesome/free-brands-svg-icons
    $ npm i --save fortawesome/free-regular-svg-icons
    $ npm i --save @fortawesome/free-solid-svg-icons
    

    我们不需要在 angular.json 的样式和脚本中包含任何内容。要在 Angular 中运行和使用 font-awesome,我们必须在 app.module.ts 文件中导入 FontAwesomeModule。我们可以在 Angular 组件模板中直接使用 font-awesome。

    <fa-icon [icon]="['fas', 'sun']"></fa-icon>
    <fa-icon [icon]="['far', 'sun']" ></fa-icon>
    <fa-icon [icon]="['fab', 'facebook']"></fa-icon>
    

    例如 angular 中 font-awesome 的配置。检查这篇文章。 https://edupala.com/angular-font-awesome/

    【讨论】:

    • 谢谢!我不明白为什么官方网站上没有记录...
    【解决方案4】:

    就我而言,我不得不重新启动服务器。在运行服务器的 cli 中,按 ctrl+c 关闭服务器,然后运行 ​​ng serve --openng serve 再次打开服务器。

    【讨论】:

      【解决方案5】:

      在 index.html 或 angular.cli 中链接你的字体很棒的 css 和 js 文件

      索引.html

      <!-- Custom Fonts -->
      
      
       <link href="your node font awesome location" rel="stylesheet" type="text/css">
      

      角度-cli:

      "styles": ['your node font awesome location']
      

      【讨论】:

      【解决方案6】:

      请将以下代码添加到您的 package.json 中

       "dependencies": {
           "font-awesome": "^4.7.0", // here I am saying use version 4.7 and above
      }
      

      如果您没有使用 angular CLI,在您的情况下交叉检查 font-color 我已经看到字体已加载但未出现

      【讨论】:

      • 我已经有了 package.json。是的,字体已加载但未出现,我不明白它是怎么发生的。
      【解决方案7】:

      如果上述提示均无效,请卸载最新的并安装第 4 版 fontawesome,您就可以开始了。 https://fontawesome.com/v4.7.0/icon/trash

      【讨论】:

        猜你喜欢
        • 2017-04-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多