This time I will show you how to use Angular to open Font-Awesome, and what are the precautions for how to use Angular to open Font-Awesome. The following is a practical case, let's take a look.
Preface
This article mainly introduces to you the relevant content about opening Font-Awesome in Angular posture, and shares it for your reference and study , not much to say below, let’s take a look at the detailed introduction.
Environment
Angular: v5.2.9
Font- Awesome: v5.0.10
angular-fontawesome: v0.1.0-9
No need to use the traditional Web Font method
I used to be accustomed to the traditional method of Font-Awesome: refer to a font-awesome.min.css file at the bottom of the page, and then use <i class= in the page "fa xxx"></i>
Placing icons - this is still possible in Angular, but this is not Angularish - we can actually use Angular module components to achieve it. At the time of writing this article, Package for Angular has not been officially launched on the official website, but there are already relevant documentation tutorials on the official GitHub. The following content of this article basically follows the official documentation.
Install Package
npm method:
$ npm install @fortawesome/fontawesome-svg-core --save $ npm install @fortawesome/free-solid-svg-icons --save $ npm install @fortawesome/angular-fontawesome --save
where "free-solid-svg- "icons" is the classic style, and there are "regular" and "light" options:
$ npm install @fortawesome/free-brands-svg-icons --save $ npm install @fortawesome/free-regular-svg-icons --save
Import the basic module in app.module.ts
// ... import { FontAwesomeModule } from '@fortawesome/angular-fontawesome'; @NgModule({ // ... imports: [ // ... FontAwesomeModule ], // ... }) // ...
Import Then there is no need to import it repeatedly in other components. This is the basis for the following ways of using icons.
Use on demand method 1
Import the icons you need in the component:
// ... import { faCoffee } from '@fortawesome/free-solid-svg-icons'; //... export class AppComponent { //... myIcon = faCoffee; }
Note: The name of the icon imported here must be prefixed with fa and use camelCase nomenclature. After importing, you can use the icon in the html template in the following way:
<fa-icon [icon]="myIcon"></fa-icon>
Note that the icon name must be used directly in the html template. Icons can be found in the official website icon library.
On-demand usage method two
The second on-demand usage method is to use the library. After using the library, you no longer need to import icons into the component. All done in app.module.ts:
import { FontAwesomeModule } from '@fortawesome/angular-fontawesome'; import { library } from '@fortawesome/fontawesome-svg-core';
After you have the library, then add the icons you need:
import { FontAwesomeModule } from '@fortawesome/angular-fontawesome'; import { library } from '@fortawesome/fontawesome-svg-core'; import { faCoffee } from '@fortawesome/free-solid-svg-icons';
Then add the icons to the library:
// import ... library.add(faCoffee); // NgModule({...
So you can use it directly in the html template.
Full set import
For a website of average size, I still recommend importing all the icons and use whatever you want. It is more convenient than searching for the names and importing them one by one. The complete import method is to replace the icon name with the alias of the icon package:
// Single: import { faCoffee } from '@fortawesome/free-solid-svg-icons'; // All: import { fas } from '@fortawesome/free-solid-svg-icons';
The "s" in "fas" represents the "solid" in "free-solid-svg-icons". By analogy, the import of other styles is:
import { far } from '@fortawesome/free-regular-svg-icons'; import { fab } from '@fortawesome/free-brands-svg-icons';
Then add it in the library:
library.add(fas); // or library.add(fas, far);
After adding it, you can use the icons arbitrarily in html.
How to write in html template
The previous way:
<fa-icon [icon]="coffee"></fa-icon> // or <fa-icon icon="coffee"></fa-icon>
is actually a simple way of writing. It uses the fas style icon by default. If you want far or fab, you need to write like this:
<fa-icon [icon]="['fas', 'coffee']"></fa-icon>
Fill in the style package alias as the prefix into the first element of the array. I recommend this precise way of writing.
Basic Icon Special Effects
Font-Awesome also has many great icon special effects - which can be achieved through the tag attributes of html. Here are some basic usages directly copied from the document:
Rotation and pulse rotation:
<fa-icon [icon]="['fas', 'spinner']" [spin]="true"></fa-icon> <fa-icon [icon]="['fas', 'spinner']" [pulse]="true"></fa-icon>
Fixed width:
<fa-icon [icon]="['fas', 'coffee']" [fixedWidth]="true"></fa-icon>
Border:
<fa-icon [icon]="['fas', 'coffee']" [border]="true"></fa-icon>
Flip:
<fa-icon [icon]="['fas', 'coffee']" flip="horizontal"></fa-icon> <fa-icon [icon]="['fas', 'coffee']" flip="vertical"></fa-icon> <fa-icon [icon]="['fas', 'coffee']" flip="both"></fa-icon>
Size:
<fa-icon [icon]="['fas', 'coffee']" size="xs"></fa-icon> <fa-icon [icon]="['fas', 'coffee']" size="lg"></fa-icon> <fa-icon [icon]="['fas', 'coffee']" size="6x"></fa-icon>
Deflection by angle:
<fa-icon [icon]="['fas', 'coffee']" rotate="90"></fa-icon> <fa-icon [icon]="['fas', 'coffee']" rotate="180"></fa-icon> <fa-icon [icon]="['fas', 'coffee']" rotate="270"></fa-icon>
Arrangement to the left or right:
<fa-icon [icon]="['fas', 'coffee']" pull="left"></fa-icon> <fa-icon [icon]="['fas', 'coffee']" pull="right"></fa-icon>
I believe you have mastered it after reading the case in this article Method, for more exciting information, please pay attention to other related articles on the php Chinese website!
Recommended reading:
How to use vue webpack to make a project (with code)
How to operate vue.js data binding
The above is the detailed content of How to open Font-Awesome using Angular. For more information, please follow other related articles on the PHP Chinese website!