Angular 2 이상과 Angular CLI를 사용하고 있습니다.
프로젝트에 폰트를 추가하려면 어떻게해야합니까?
답변
Angular 2.0 최종 릴리스 이후 에는 Angular2 CLI 프로젝트의 구조가 변경되었습니다. 시스템 파일은 필요 없으며 system.js는 없으며 웹팩 만 있습니다. 그래서 당신은 :
-
npm install font-awesome --save
-
에서
angular-cli.json
파일의 위치를styles[]
배열을 아래처럼 여기 글꼴 멋진 참조 디렉토리를 추가 :"apps": [ { "root": "src", "outDir": "dist", .... "styles": [ "styles.css", "../node_modules/bootstrap/dist/css/bootstrap.css", "../node_modules/font-awesome/css/font-awesome.css" // -here webpack will automatically build a link css element out of this!? ], ... } ] ],
최신 버전의 Angular에서는
angular.json
대신 파일을 대신 사용 하십시오../
. 예를 들어을 사용하십시오"node_modules/font-awesome/css/font-awesome.css"
. -
원하는 html 파일에 멋진 글꼴 아이콘을 넣으십시오.
<i class="fa fa-american-sign-language-interpreting fa-5x" aria-hidden="true"> </i>
-
응용 프로그램 중지 Ctrl+를 c사용하여 응용 프로그램을 실행하여 다시 다음
ng serve
파수꾼이 변화를 관찰되지 src 폴더와 각-cli.json에만 때문이다. - 멋진 아이콘을 즐기십시오!
답변
SASS를 사용하는 경우 npm을 통해 설치할 수 있습니다.
npm install font-awesome --save
와 함께 가져 오기 /src/styles.scss
:
$fa-font-path: "../node_modules/font-awesome/fonts";
@import "../node_modules/font-awesome/scss/font-awesome.scss";
팁 : 가능할 때마다 angular-cli
인프라 를 혼동하지 마십시오 . 😉
답변
가장 좋은 답변은 약간 구식이며 약간 더 쉬운 방법이 있습니다.
-
npm을 통해 설치
npm install font-awesome --save
-
당신의
style.css
:@import '~font-awesome/css/font-awesome.css';
또는 당신의
style.scss
:
$fa-font-path: "~font-awesome/fonts";
@import '~font-awesome/scss/font-awesome';편집 : 주석에서 언급했듯이 최신 버전에서 글꼴 행을 다음으로 변경해야합니다
$fa-font-path: "../../../node_modules/font-awesome/fonts";
를 사용하면 ~
sass를 살펴볼 수 node_module
있습니다. 상대 경로보다이 방법으로 수행하는 것이 좋습니다. 그 이유는 npm에 구성 요소를 업로드하고 구성 요소 scss에서 font-awesome을 가져 오는 경우 해당 지점에서 잘못된 상대 경로가 아닌 ~로 제대로 작동하기 때문입니다.
이 방법은 CSS가 포함 된 모든 npm 모듈에 적용됩니다. scss에서도 작동합니다. 그러나 CSS를 styles.scss로 가져 오는 경우 작동하지 않으며 아마도 그 반대도 가능합니다. 여기 왜
답변
Angular Projects에서 Font-Awesome을 사용하는 데는 3 가지 부분이 있습니다
- 설치
- 스타일링 (CSS / SCSS)
- 각도 사용법
설치
NPM에서 설치하고 패키지에 저장하십시오.
npm install --save font-awesome
CSS를 사용하는 경우 스타일링
style.css에 삽입
@import '~font-awesome/css/font-awesome.css';
SCSS를 사용하는 경우 스타일링
스타일에 삽입하십시오.
$fa-font-path: "../node_modules/font-awesome/fonts";
@import '~font-awesome/scss/font-awesome.scss';
일반 Angular 2.4 이상에서 사용
<i class="fa fa-area-chart"></i>
와 사용 각도 재료
app.module.ts에서 생성자를 수정하여 MdIconRegistry
export class AppModule {
constructor(matIconRegistry: MatIconRegistry) {
matIconRegistry.registerFontClassAlias('fontawesome', 'fa');
}
}
수입에 추가 MatIconModule
하십시오@NgModule
@NgModule({
imports: [
MatIconModule,
....
],
declarations: ....
}
이제 모든 템플릿 파일에서 할 수 있습니다
<mat-icon fontSet="fontawesome" fontIcon="fa-area-chart"></mat-icon>
답변
업데이트 2020 년 2 월 :
fortawesome 패키지는 이제 지원 ng add
하지만 각도 9에서만 사용할 수 있습니다 .
ng add @fortawesome/angular-fontawesome
2019 년 10 월 8 일 업데이트 :
새 패키지를 사용할 수 있습니다 https://www.npmjs.com/package/@fortawesome/angular-fontawesome
npm install @fortawesome/angular-fontawesome @fortawesome/fontawesome-svg-core @fortawesome/free-solid-svg-icons
FontAwesomeModule
가져 오기에 추가 src/app/app.module.ts
:
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';
import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
@NgModule({
imports: [
BrowserModule,
FontAwesomeModule
],
declarations: [AppComponent],
bootstrap: [AppComponent]
})
export class AppModule { }
아이콘을 구성 요소의 속성에 연결하십시오 src/app/app.component.ts
.
import { Component } from '@angular/core';
import { faCoffee } from '@fortawesome/free-solid-svg-icons';
@Component({
selector: 'app-root',
templateUrl: './app.component.html'
})
export class AppComponent {
faCoffee = faCoffee;
}
템플릿에서 아이콘을 사용하십시오 src/app/app.component.html
.
<fa-icon [icon]="faCoffee"></fa-icon>
원래 답변 :
옵션 1:
angular-font-awesome npm 모듈을 사용할 수 있습니다
npm install --save font-awesome angular-font-awesome
모듈을 가져옵니다.
...
//
import { AngularFontAwesomeModule } from 'angular-font-awesome';
@NgModule({
//...
imports: [
//...
AngularFontAwesomeModule
],
//...
})
export class AppModule { }
Angular CLI를 사용하는 경우 angular-cli.json 내부의 스타일에 글꼴이 멋진 CSS를 추가하십시오.
"styles": [
"styles.css",
"../node_modules/font-awesome/css/font-awesome.css"
],
참고 : SCSS 전처리기를 사용하는 경우 scss의 CSS를 변경하십시오.
사용 예 :
<fa name="cog" animation="spin"></fa>
옵토 인 2 :
가 공식 이야기그것에 가 있습니다
멋진 글꼴 라이브러리를 설치하고 종속성을 추가하십시오. package.json
npm install --save font-awesome
CSS 사용
앱에 Font Awesome CSS 아이콘을 추가하려면 …
// in .angular-cli.json
"styles": [
"styles.css",
"../node_modules/font-awesome/css/font-awesome.css"
]
SASS 사용
빈 파일 만들기 _variables.scss
에을src/
.
다음에 추가하십시오 _variables.scss
:
$fa-font-path : '../node_modules/font-awesome/fonts';
다음을 styles.scss
추가하십시오.
@import 'variables';
@import '../node_modules/font-awesome/scss/font-awesome';
테스트
ng serve를 실행하여 개발 모드에서 애플리케이션을 실행하고 http : // localhost : 4200으로 이동 하십시오. .
Font Awesome이 올바르게 설정되었는지 확인하려면 src/app/app.component.html
다음으로 변경 하십시오.
<h1>
{{title}} <i class="fa fa-check"></i>
</h1>
이 파일을 저장 한 후 브라우저로 돌아가서 앱 제목 옆에 Font Awesome 아이콘이 표시됩니다.
또한 관련 질문이 있습니다. Angular CLI 는 기본적으로 angular cli가 글꼴을 루트 로 출력하는 것처럼 dist root 를 글꼴로 멋진 글꼴 파일 로 출력합니다 dist
. 전혀 문제가되지 않습니다.
답변
와 Angular2
RC5 및angular-cli 1.0.0-beta.11-webpack.8
당신은 CSS를 수입하여이 작업을 수행 할 수 있습니다.
멋진 글꼴을 설치하십시오.
npm install font-awesome --save
구성된 스타일 파일 중 하나에서 멋진 글꼴을 가져옵니다.
@import '../node_modules/font-awesome/css/font-awesome.css';
(스타일 파일은에 구성되어 있습니다 angular-cli.json
)
답변
font-awesome이 이제 설명서에 따라 다르게 설치되어 있기 때문에 해상도를 낮추겠다고 생각했습니다.
npm install --save-dev @fortawesome/fontawesome-free
왜 그것이 끔찍한 지 이제 나에게서 탈출하지만 오래된 글꼴로 돌아 가지 않고 최신 버전을 고수 할 것이라고 생각했습니다.
그런 다음 scss로 가져 왔습니다.
$fa-font-path: "../node_modules/@fortawesome/fontawesome-free/webfonts";
@import "~@fortawesome/fontawesome-free/scss/fontawesome";
@import "~@fortawesome/fontawesome-free/scss/brands";
@import "~@fortawesome/fontawesome-free/scss/regular";
@import "~@fortawesome/fontawesome-free/scss/solid";
@import "~@fortawesome/fontawesome-free/scss/v4-shims";
도움이 되었기를 바랍니다