Angular 9 + FontAwesome 0.6: «Ошибка NG8001:« fa-icon »не является известным элементом» - PullRequest
1 голос
/ 18 апреля 2020

Я столкнулся с проблемой при попытке использовать потрясающие иконки . Я уже установил FontAwesome с командной строкой в ​​свой проект:

ng add @fortawesome/angular-fontawesome@latest

У меня есть подмодуль, и я хочу использовать значок "fas" -> "images" прямо внутри него. Итак, я создал свой подмодуль:

import { PhotoListComponent } from './photo-list.component';
import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
import { library } from '@fortawesome/fontawesome-svg-core';
import { fas } from '@fortawesome/free-solid-svg-icons';

@NgModule({
  declarations: [
    PhotoListComponent
  ],
  imports: [
    CommonModule,
    FontAwesomeModule
  ]
})
export class PhotoListModule {
  constructor() {
    library.add(fas);
  }
}

У меня есть компонент в этом подмодуле (photo-list.component.ts и photo-list.component. html). В его файле HTML я просто поместил эту строку, чтобы отобразить значок в заголовке:

<h1><fa-icon [icon]="['fas','images']"></fa-icon> Images</h1>

Когда я запускаю свой проект angular и открываю этот модуль, возникает следующая ошибка (и значок не отображает примечания ): Ошибка NG8001: fa-icon не является известным элементом

Почему он не работает?

1 Ответ

1 голос
/ 18 апреля 2020

Я проверил код: в fontawesome произошли некоторые изменения, и теперь правильный импорт должен быть следующим:

import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { FormsModule } from '@angular/forms';

import { AppComponent } from './app.component';
import { HelloComponent } from './hello.component';

import { FontAwesomeModule, FaIconLibrary  } from '@fortawesome/angular-fontawesome';

import { faCoffee, fas } from '@fortawesome/free-solid-svg-icons';

@NgModule({
  imports:      [ BrowserModule, FormsModule, FontAwesomeModule ],
  declarations: [ AppComponent, HelloComponent ],
  bootstrap:    [ AppComponent ]
})
export class AppModule { 
  constructor(library: FaIconLibrary) {
    library.addIconPacks(fas);
    library.addIcons(faCoffee);
  }
}

см. Рабочий пример на основе вашего кода: https://stackblitz.com/edit/angular-5qu1fy

...