【问题标题】:What is the difference between fontawesome angular package and standard npm package and simple sassfontawesome angular package和标准npm package和simple sass有什么区别
【发布时间】:2020-06-10 06:56:27
【问题描述】:

我有一个带有 sass(SCSS) 的新 angular cli(8+) 项目。我检查了 Fontawesome 文档,发现了多种托管 fontawesome 图标的方法(npm package installangular packagesimple scss)。

我想知道它们之间有什么区别?对于具有 sass 的 Angular CLI 项目,这是推荐的方式。

【问题讨论】:

    标签: angular npm sass font-awesome angular-fontawesome


    【解决方案1】:

    当你通过 npm 包管理器安装 Fontawesome 时,它​​已经附带了所有的 Scss 文件。因此,“npm package install”和“simple Scss”之间没有选择。 这里的问题更多:例如,使用包管理器或仅在资产文件夹中的项目中托管您需要的 Scss 文件? 选择最后一个选项,您将无法使用 npm 轻松更新库版本。

    编辑:使用这种 CSS/SCSS 方法,您将始终加载所有图标(一个字体文件,对于 FontAwesome Pro 来说尤其巨大)

    角度包是另一回事。这是 FontAwesome 的一个新的官方包。无需在项目中导入 Scss 文件,您可以直接使用 FontAwesome Angular 组件。

    编辑:此包使用 SVG 图标,并将使用 Angular CLI 基础架构从最终包中删除所有未使用的图标。

    更简单的:

    • 安装 npm 包或仅托管您需要的 CSS 缩小文件,
    • 在 angular.cli 文件中添加指向文件位置的链接

    您将能够在所有 Html 文件中使用 Fontawesome 类(如 .fab .fa-twitter)。

    Sccs 导入:

    如果您想使用 Fontawesome mixins 个性化您的课程,您可以在项目的任何 Scss 文件中导入 Scss 文件。

    一个用例:一个 .user-button 类,它扩展了一个 .fa-icon 属性并包含一个 Fontawesome 用户图标。

    角度包:

    您将永远不必处理 FontAwesome 类,但只需在您的 app.module.ts 中导入模块并使用 FontAwesome 图标作为特定组件。

    【讨论】:

    • 我想您应该提到的一个重要区别是,使用 CSS/SCSS 方法时,您将始终加载所有图标(一个字体文件,对于 FontAwesome Pro 而言尤其如此巨大)。如果您使用 angular-fontawesome 包,它会使用 SVG 图标,并将使用 Angular CLI 基础架构从最终包中删除所有未使用的图标。 ref 1ref 2.
    • 有些图标有动画...如果我只集成scss文件,那些动画图标会开箱即用吗?
    • 你能用 @YaroslavAdmin 的 cmets 更新你的答案吗?然后我会排除你的答案,因为它将是完整的......
    猜你喜欢
    • 1970-01-01
    • 2017-10-30
    • 2017-12-07
    • 1970-01-01
    • 2019-12-16
    • 1970-01-01
    • 2020-03-26
    • 2018-07-05
    相关资源
    最近更新 更多