你有两个选择:
1. 使用 angular-fontawesome 库
只需按照他们github 页面上的说明进行操作即可。
2.直接使用fontawesome 5
确保您已安装所有相关的npm 包。
对于 Pro 包,请查看此。
导入相关图标:
import {faChevronLeft, faChevronRight} from '@fortawesome/fontawesome-free-solid';
import fontawesome from '@fortawesome/fontawesome';
将图标添加到全局范围fontawesome
内的库中(不在组件的构造函数内):
fontawesome.library.add(faChevronLeft, faChevronRight);
在 html 中使用它:
<span class="fas" [class.fa-chevron-left]="direction==='left'" [class.fa-chevron-right]="direction==='right'"></span>
注意 html 中的前缀:
fas
用于fontawesome-free-solid
图标(也适用于fa
)
<span class="fas fa-chevron-left"></span>
fab
对于fontawesome-free-brands
图标
<span class="fab fa-bitcoin"></span>
far
对于fontawesome-free-regular
图标
<span class="far fa-chevron-left"></span>
fal
fontawesome-free-light
图标(专业版 )
<span class="fal fa-chevron-left"></span>
重要的提示:
fontawesome
只要只完成一次(在初始化时),就可以使用变量来定义类。但是,如果变量更改其值,它将不会反映在 html 中。考虑这个例子:
<span class="fas fa-chevron-{{direction}}"></span>
这将在初始化时放置正确的图标,但如果之后方向发生变化,它将不会被反映。
这样做的原因是用适当fontawesome 5
的替换了分类的元素,一旦被替换,没有变量会影响这一点。
如果您希望上面的 html 反映运行时更改,您必须像这样更改它:fa ...
svg
<span *ngIf="direction==='right'"><span class="fas fa-chevron-right"></span></span>
<span *ngIf="direction==='left'"><span class="fas fa-chevron-left"></span></span>
外部span
是必要的,因为内部span
已被替换,svg
因此您无法穿上*ngIf
它。
进一步阅读: