Saya memiliki masalah yang sama. Ini seperti file yang diabaikan oleh CLI dan tidak disalin ketika dalam mode dev. Yang mengatakan, file tersebut ada di dir / dist, ketika build selesai.
Thibs
Saya tidak mengerti, mengapa kita perlu menambahkan font-mengagumkan melalui npm, tidak bisakah kita hanya menautkan ke font-mengagumkan cdn? Apa yang saya lewatkan?
Rosdi Kasim
4
@RosdiKasim Anda dapat menautkan ke CDN dari file indeks Anda. Ada beberapa kasus ketika Anda tidak ingin melakukannya. Proyek perusahaan mungkin tidak mengizinkan sumber eksternal; CDN bisa turun; Pembaruan CLI mungkin perlu memperbarui file index.html sehingga Anda harus memastikan itu tidak menimpa tautan Anda saat ini; font-mengagumkan bisa menjadi ketergantungan untuk lib npm lain; Anda ingin mengunci font-mengagumkan ke versi tertentu; proses pembuatan Anda dapat bergantung padanya ... (dan seterusnya, Anda mendapatkan idenya) Pada akhirnya, bagaimana Anda ingin membawanya.
Nik
Ok terima kasih ... sepertinya saya tidak ketinggalan banyak ... Saya hanya ingin memastikan saya mengerti pro dan kontra ... tepuk tangan.
Rosdi Kasim
Lihat juga dokumentasi resmi untuk menambahkan JS atau CSS: angular.io/guide/…
Guillaume Husta
Jawaban:
469
Setelah rilis final Angular 2.0, struktur proyek Angular2 CLI telah diubah - Anda tidak memerlukan file vendor, tanpa system.js - hanya webpack. Jadi Anda melakukannya:
npm install font-awesome --save
Dalam angular-cli.jsonfile temukan styles[]array dan tambahkan direktori referensi font-mengagumkan di sini, seperti di bawah ini:
"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!?
],
...
}
]
],
Di versi Angular yang lebih baru, gunakan angular.jsonfile, tanpa ../. Sebagai contoh, gunakan "node_modules/font-awesome/css/font-awesome.css".
Tempatkan beberapa ikon font-mengagumkan dalam file html yang Anda inginkan:
Hentikan aplikasi Ctrl+ ckemudian jalankan kembali aplikasi menggunakan ng servekarena pengamat hanya untuk folder src dan angular-cli.json tidak diamati untuk perubahan.
Bisakah Anda menjelaskan apa addons? Saya melihat itu didokumentasikan sebagai "Konfigurasi dicadangkan untuk addon pihak ketiga yang diinstal." , tapi saya tidak dapat menemukan penanganan dalam kode Angular-CLI .
Arjan
1
Sayangnya @Arjan & @bjorkblom - saya tidak dapat menemukan dokumen tentang ini addonsdiajukan ... Ini telah menjadi perhatian saya untuk sementara waktu sekarang .. Saya akan memperbarui jawaban saya setelah saya menemukan sesuatu.
AIon
3
@Rosdi Kasim Jan - Anda bisa melakukan itu - tetapi dalam aplikasi yang lebih besar umumnya Anda tidak menggunakan cdns. Pertama karena seseorang dapat meretasnya dan kompromi aplikasi Anda secara tidak langsung. Kedua karena ini bukan hanya font-mengagumkan - Anda perlu perpustakaan eksternal lain seperti bootstrap, perpustakaan dnd dll - jika Anda memiliki permintaan http terpisah - ke cdn - untuk masing-masing, itu kinerja buruk. Yang Anda lakukan sebagai gantinya, adalah mengunduh dengan npm - dan bundel dengan semua kode Anda dalam satu file tunggal menggunakan webpack atau sesuatu, minify dan uglify itu - dan itulah cara Anda dapat menjalankan aplikasi Anda di ponsel - di mana sumber dayanya rendah.
Ini solusi imo terbaik. Bekerja seperti pesona setelah a ng build && ng serve -w. Lebih mudah dan lebih aman untuk membiarkan scss membangun font + gaya daripada mencoba mengubah angular-cli infra;)
Sunting: sebagaimana tercantum dalam komentar, baris untuk font harus diubah pada versi yang lebih baru$fa-font-path: "../../../node_modules/font-awesome/fonts";
menggunakan ~akan membuat sass melihat ke dalam node_module. Lebih baik melakukannya dengan cara ini daripada dengan jalur relatif. Alasannya adalah bahwa jika Anda mengunggah komponen pada npm, dan Anda mengimpor font-awesome di dalam komponen scss maka itu akan berfungsi dengan baik ~ dan bukan dengan jalur relatif yang akan salah pada saat itu.
Metode ini berfungsi untuk setiap modul npm yang berisi css. Ia bekerja untuk scss juga. Namun jika Anda mengimpor css ke styles.scss Anda, itu tidak akan berfungsi (dan mungkin sebaliknya). Inilah sebabnya
Masih mendapatkan kesalahan yang sama setelah mengikuti langkah-langkah Anda.
indra257
Gagal memuat file .ttf, woff, dan woff2
indra257
Saya menggunakan cli 1.0. Hanya untuk mengecek, saya membuat satu aplikasi sampel dan hanya memuat font-mengagumkan dan menyebarkan aplikasi. masih mendapatkan kesalahan itu.
indra257
@ indra257 Saya harus menambahkan $ fa-font-path: "../node_modules/font-awesome/fonts"; di styles.scss agar instruksi di atas berfungsi
Todilo
Saya tidak punya file style.scss di proyek saya. Apakah saya harus mengikuti langkah-langkah lain setelah menambahkan file styles.scss.
indra257
51
Ada 3 bagian untuk menggunakan Font-Awesome di Proyek Angular
Apakah Anda memiliki masalah dengan bundling font-awesome. Saya pikir masalah utama adalah bundling ketika kita menggunakan Cli. file tff, woff, woff2 tidak dibundel.
indra257
Saya baru saja membuat aplikasi sampel dan mengikuti langkah Anda. Membundel aplikasi menggunakan ng build. Di konsol saya masih melihat Tidak dapat memuat kesalahan file woff dan woff2
indra257
1
Itu benar. Ini berfungsi dengan baik dengan melayani. Dengan ng build, itu berfungsi dengan baik, tetapi konsol menunjukkan itu tidak dapat memuat beberapa file woff, woff2.
indra257
Saya tidak melihat masalah yang sama, jadi saya berharap ada yang salah dengan file build / config Anda. Saya sarankan Anda mereplikasi masalah Anda dengan test case dan membuat pertanyaan baru dengannya.
muttonUp
Saya membuat aplikasi kosong dengan menggunakan angular-cli dan menambahkan font-mengagumkan. File mana yang Anda ingin saya periksa ..
Saat menggunakan opsi 1, hapus ../dari di depan"../node_modules/font-awesome/css/font-awesome.css"
Alf Moh
MENGAPA saya harus menggunakan paket sudut baru? Tampaknya jauh lebih PITA mengimpornya secara individual.
MDave
1
Maksud saya bahwa npm install @fortawesome/fontawesome-svg-core @fortawesome/free-solid-svg-iconsdalam jawaban Anda tidak sama dengan npm install @fortawesome/fontawesome-svg-core @fortawesome/free-solid-svg-icons @fortawesome/angular-fontawesomedi dokumen, maaf jika saya kehilangan sesuatu yang jelas.
User632716
1
@ User632716 OK baru saja menambahkan paket yang hilang ke perintah instal npm.
kuncevic.dev
1
Terima kasih banyak ... Saya sedang mencari font Angular 9 + yang mengagumkan. UPDATE Februari 2020 adalah hal yang paling bermanfaat setelah membuang 1 hari.
Tejashree
15
Dengan Angular2RC5 danangular-cli 1.0.0-beta.11-webpack.8 Anda dapat mencapainya dengan impor css.
Cukup instal font yang mengagumkan:
npm install font-awesome --save
dan kemudian impor font-mengagumkan di salah satu file gaya terkonfigurasi Anda:
Sepertinya sedang mencoba mengimpor tetapi mendapatkan kesalahan zone.js:101 - GET http://localhost:4200/node_modules/font-awesome/css/font-awesome.css 404 (Not Found) ... file benar-benar ada tetapi sepertinya localhost:4200tidak berjalan dari root folder ini ... Cara mengemas font-mengagumkan ke localhost:4200folder root ...
microchip78
Saya juga menggunakan [email protected]dan konfigurasi file style angular-cli.jsontidak berfungsi ...
microchip78
1
hmm itu aneh, mungkin upgrade ke 1.0.0-beta.11-webpack.8?
shusson
13
Saya pikir saya akan memberikan resolusi saya untuk ini karena font-mengagumkan sekarang diinstal berbeda sesuai dengan dokumentasi mereka.
Mengapa itu fortawesome sekarang luput dari saya tetapi saya pikir saya akan tetap dengan versi terbaru daripada jatuh kembali ke font-mengagumkan yang lama.
Banyak instruksi di atas berfungsi, saya sarankan melihat itu. Namun, sesuatu yang perlu diperhatikan:
Penggunaan <i class="fas fa-coffee"></i>tidak berhasil di proyek saya (proyek latihan baru yang baru berumur seminggu) setelah instalasi dan ikon sampel di sini juga disalin ke clipboard dari Font Awesome dalam seminggu terakhir.
Ini <i class="fa fa-coffee"></i>berhasil . Jika setelah menginstal Font Awesome pada proyek Anda itu belum berfungsi, saya sarankan memeriksa kelas pada ikon Anda untuk menghapus 's' untuk melihat apakah itu berfungsi kemudian.
Ada banyak jawaban bagus di sini. Tetapi jika Anda mencoba semuanya dan masih mendapatkan kotak alih-alih ikon fontawesome, periksa aturan css Anda. Dalam kasus saya, saya memiliki aturan berikut:
Terima kasih banyak yang telah melakukannya untuk saya, sekarang saya harus mencari cara untuk membuat font bekerja sejak melakukannya di selector tubuh tidak bekerja untuk saya
jgerstle
@jgerstle, menentukan font di bodyharus berfungsi, pastikan, bahwa Anda tidak menimpa font di tempat lain, mungkin Anda menimpanya h*atau ptag seperti yang biasanya kita lakukan.
Bunuh Diri Komersial
Ya sesuatu sepertinya menimpanya, tetapi saya tidak berpikir itu kode saya sendiri. Saya pikir itu mungkin saja krom default itu aneh, karena saya mengaturnya! Penting dan sepertinya masih ditimpa. Saya harus melihat lebih dalam.
jgerstle
Saya mendapatkannya menggunakan: not (.fa) untuk mempertahankan pemilih * yang sama, tetapi tidak menargetkan apa pun menggunakan font-mengagumkan
Saya berakhir dengan hanya kotak untuk gambar ketika saya melakukan ini.
Gargoyle
sama di sini, bagaimana Anda menghapus kotak? @Gargoyle
AngularM
4
Posting ini menjelaskan cara mengintegrasikan Fontawesome 5 ke Angular 6 (Angular 5 dan versi sebelumnya juga akan berfungsi, tetapi kemudian Anda harus menyesuaikan tulisan saya)
Opsi 1: Tambahkan File-css
Pro: Setiap ikon akan disertakan
Contra: Setiap ikon akan disertakan (ukuran aplikasi lebih besar karena semua font disertakan)
Contra: Anda harus memasukkan setiap ikon yang ingin Anda gunakan secara terpisah
Gunakan paket FontAwesome 5 Angular:
npm install @fortawesome/angular-fontawesome
Cukup ikuti dokumentasi mereka untuk menambahkan ikon. Mereka menggunakan svg-icons, jadi Anda hanya perlu menambahkan svgs / ikon, Anda benar-benar menggunakan.
Perhatikan jalur Anda mulai dengan @fortawesome. Perhatikan kata 'FORT', bukan 'FONT' Instal saya juga melakukan ini. Adakah yang tahu ada apa dengan ini?
Helzgate
Tidak apa-apa, tampaknya mereka memiliki beberapa penataan ulang yang terjadi. Lihat This Github Post
Helzgate
@Aniketkale apa yang tidak berfungsi? Saya mempersembahkan dua pilihan
Paul
3
Setelah beberapa percobaan, saya berhasil agar yang berikut berfungsi:
Sunting: Saya menggunakan sudut ^ 4.0.0 dan Elektron ^ 1.4.3
Jika Anda memiliki masalah dengan ElectronJS atau serupa dan memiliki semacam kesalahan 404, solusi yang mungkin adalah untuk menghapus Anda webpack.config.js, dengan menambahkan (dan dengan asumsi bahwa Anda memiliki modul node font-awesome diinstal melalui npm atau dalam file package.json) :
new CopyWebpackPlugin([
{ from: 'node_modules/font-awesome/fonts', to: 'assets' },
{ from: 'src/assets', to: 'assets' }
]),
Perhatikan bahwa konfigurasi webpack yang saya gunakan memiliki src/app/distsebagai output, dan, pada gilirannya, assetsfolder dibuat oleh webpack:
Jadi pada dasarnya, apa yang sedang terjadi adalah:
Webpack sedang menyalin folder font ke folder dev asset.
Webpack menyalin folder aset dev ke distfolder aset
Sekarang, ketika proses pembangunan akan selesai, aplikasi perlu mencari .scssfile dan folder yang berisi ikon, menyelesaikannya dengan benar. Untuk mengatasinya, saya telah menggunakan ini di konfigurasi webpack saya:
// support for fonts
{
test: /\.(ttf|eot|svg|woff(2)?)(\?[a-z0-9=&.]+)?$/,
loader: 'file-loader?name=dist/[name]-[hash].[ext]'
},
Akhirnya, dalam .scssfile tersebut, saya mengimpor font .scss yang mengagumkan dan menentukan jalur font, yang, sekali lagi dist/assets/font-awesome/fonts,. Jalannya adalahdist karena di webpack.config saya output.path diatur sebagaihelpers.root('src/app/dist');
Perhatikan bahwa, dengan cara ini, ini akan menentukan jalur font (digunakan nanti dalam file .scss) dan mengimpor file .scss menggunakan ~font-awesomeuntuk menyelesaikan jalur font-mengagumkan dinode_modules .
Ini cukup sulit, tapi itu satu-satunya cara yang saya temukan untuk mengatasi masalah kesalahan 404 dengan Electron.js
Saya menghabiskan beberapa jam untuk mencoba versi terbaru dari FontAwesome 5.2.0 bekerja dengan AngularCLI 6.0.3 dan Material Design. Saya mengikuti instruksi instalasi npm dari situs web FontAwesome
Dokumen terbaru mereka memerintahkan Anda menginstal menggunakan yang berikut ini:
npm install @fortawesome/fontawesome-free
Setelah menghabiskan beberapa jam akhirnya saya menghapus dan menginstal font yang mengagumkan menggunakan perintah berikut (ini menginstal FontAwesome v4.7.0):
Font Awesome memberi Anda scalableikon vektor yang dapat langsung dikustomisasi — ukuran, warna, drop shadow, dan apa pun yang dapat dilakukan dengan kekuatan CSS.
Buat proyek baru dan arahkan ke proyek.
ng new navaApp
cd navaApp
Instal pustaka font-mengagumkan dan tambahkan ketergantungan ke package.json.
npm install --save font-awesome
Menggunakan CSS
Untuk menambahkan Font ikon CSS Luar Biasa ke aplikasi Anda ...
dan regexp cocok dengan referensi-svg tersebut (dengan atau tanpa spesifikasi versi). Tergantung pada pengaturan webpack Anda, Anda mungkin tidak membutuhkannya atau Anda mungkin memerlukan sesuatu yang lain.
Anda akan ingin menambahkan font-mengagumkan ke 'dependensi' Anda, bukan 'dependensi-dev' karena Anda akan membutuhkannya dalam pembuatan akhir Anda. Juga instruksi di atas tidak menjawab bagaimana proyek Angular akan mengambilnya setelah mereka ditambahkan ke file package.json Anda.
Nik
1
Saya ingin menggunakan Font Awesome 5+ dan sebagian besar jawaban fokus pada versi yang lebih lama
Untuk Font Awesome 5+ baru proyek sudut belum dirilis, jadi jika Anda ingin menggunakan contoh-contoh yang disebutkan di atm situs web font mengagumkan Anda perlu menggunakan pekerjaan sekitar. (terutama fas, kelas jauh, bukan kelas fa)
Saya baru saja mengimpor cdn ke Font Awesome 5 di styles.css saya. Baru saja menambahkan ini jika ini membantu seseorang menemukan jawaban lebih cepat daripada yang saya lakukan :-)
Saya mencoba ini. Berfungsi baik di lokal, tetapi ketika saya mencoba membangunnya, ikon hilang.
Piyush Choudhary
1
Jika karena alasan tertentu Anda tidak dapat menginstal paket throw npm. Anda selalu dapat mengedit index.html dan menambahkan font CSS yang luar biasa di kepala. Dan kemudian menggunakannya dalam proyek.
Jawaban:
Setelah rilis final Angular 2.0, struktur proyek Angular2 CLI telah diubah - Anda tidak memerlukan file vendor, tanpa system.js - hanya webpack. Jadi Anda melakukannya:
npm install font-awesome --save
Dalam
angular-cli.json
file temukanstyles[]
array dan tambahkan direktori referensi font-mengagumkan di sini, seperti di bawah ini:Tempatkan beberapa ikon font-mengagumkan dalam file html yang Anda inginkan:
Hentikan aplikasi Ctrl+ ckemudian jalankan kembali aplikasi menggunakan
ng serve
karena pengamat hanya untuk folder src dan angular-cli.json tidak diamati untuk perubahan.sumber
addons
? Saya melihat itu didokumentasikan sebagai "Konfigurasi dicadangkan untuk addon pihak ketiga yang diinstal." , tapi saya tidak dapat menemukan penanganan dalam kode Angular-CLI .addons
diajukan ... Ini telah menjadi perhatian saya untuk sementara waktu sekarang .. Saya akan memperbarui jawaban saya setelah saya menemukan sesuatu.addons
properti tidak lagi digunakan. Cukup untuk memasukkanfont-awesome.css
file di bawahstyles
. Lihat github.com/angular/angular-cli/blob/master/docs/documentation/…Jika Anda menggunakan SASS, Anda bisa menginstalnya melalui npm
dan impor di Anda
/src/styles.scss
dengan:Kiat: Kapan pun memungkinkan, hindari mengacaukan
angular-cli
infrastruktur. ;)sumber
ng build && ng serve -w
. Lebih mudah dan lebih aman untuk membiarkan scss membangun font + gaya daripada mencoba mengubah angular-cli infra;)~
alih-alih../node_modules/
, misalnya@import '~font-awesome/scss/font-awesome.scss';
.css
impor dari~font-awesome/css/font-awesome.min.css
dan berfungsi dengan baik (default fa-font-path) untuk angular4 / cliJawaban teratas agak ketinggalan jaman dan ada cara yang sedikit lebih mudah.
instal melalui npm
npm install font-awesome --save
di Anda
style.css
:@import '~font-awesome/css/font-awesome.css';
atau di Anda
style.scss
:$fa-font-path: "~font-awesome/fonts"; @import '~font-awesome/scss/font-awesome';
Sunting: sebagaimana tercantum dalam komentar, baris untuk font harus diubah pada versi yang lebih baru
$fa-font-path: "../../../node_modules/font-awesome/fonts";
menggunakan
~
akan membuat sass melihat ke dalamnode_module
. Lebih baik melakukannya dengan cara ini daripada dengan jalur relatif. Alasannya adalah bahwa jika Anda mengunggah komponen pada npm, dan Anda mengimpor font-awesome di dalam komponen scss maka itu akan berfungsi dengan baik ~ dan bukan dengan jalur relatif yang akan salah pada saat itu.Metode ini berfungsi untuk setiap modul npm yang berisi css. Ia bekerja untuk scss juga. Namun jika Anda mengimpor css ke styles.scss Anda, itu tidak akan berfungsi (dan mungkin sebaliknya). Inilah sebabnya
sumber
Ada 3 bagian untuk menggunakan Font-Awesome di Proyek Angular
Instalasi
Instal dari NPM dan simpan ke package.json Anda
Styling Jika menggunakan CSS
Masukkan ke style.css Anda
Styling Jika menggunakan SCSS
Masukkan ke style.scss Anda
Penggunaan dengan Angular biasa 2.4+ 4+
Penggunaan dengan Bahan Sudut
Di app.module.ts Anda memodifikasi konstruktor untuk menggunakan
MdIconRegistry
dan tambahkan
MatIconModule
ke@NgModule
impor Anda}
Sekarang dalam file template apa pun yang sekarang dapat Anda lakukan
sumber
UPDATE Feb 2020: paket
fortawesome sekarang mendukung
ng add
tetapi hanya tersedia untuk sudut 9 :UPDATE 8 Okt 2019:
Anda dapat menggunakan paket baru https://www.npmjs.com/package/@fortawesome/angular-fontawesome
Tambahkan
FontAwesomeModule
ke impor disrc/app/app.module.ts
:Ikat ikon ke properti di komponen Anda
src/app/app.component.ts
:Gunakan ikon di templat
src/app/app.component.html
:JAWABAN ASLI:
Pilihan 1:
Anda dapat menggunakan modul npm angular-font-awesome
Impor modul:
Jika Anda menggunakan Angular CLI, tambahkan CSS font-mengagumkan ke gaya di dalam angular-cli.json
CATATAN: Jika menggunakan preprosesor SCSS, ubah saja css untuk scss
Contoh Penggunaan:
Optoin 2:
Ada cerita resmi untuk itu sekarang
Instal pustaka font-mengagumkan dan tambahkan ketergantungan ke
package.json
npm install --save font-awesome
Menggunakan CSS
Untuk menambahkan Font ikon CSS Luar Biasa ke aplikasi Anda ...
Menggunakan SASS
Buat file kosong
_variables.scss
disrc/
.Tambahkan yang berikut ke
_variables.scss
:$fa-font-path : '../node_modules/font-awesome/fonts';
Distyles.scss
tambahkan yang berikut:Uji
Jalankan ng serve untuk menjalankan aplikasi Anda dalam mode kembangkan, dan navigasikan ke http: // localhost: 4200 .
Untuk memverifikasi Font Awesome telah diatur dengan benar, ubah
src/app/app.component.html
ke ...Setelah menyimpan file ini, kembali ke browser untuk melihat ikon Font Awesome di sebelah judul aplikasi.
Juga ada pertanyaan terkait Angular CLI menghasilkan font-mengagumkan font file dist root karena secara default angular cli output font ke
dist
root, yang dengan cara tidak masalah sama sekali.sumber
../
dari di depan"../node_modules/font-awesome/css/font-awesome.css"
npm install @fortawesome/fontawesome-svg-core @fortawesome/free-solid-svg-icons
dalam jawaban Anda tidak sama dengannpm install @fortawesome/fontawesome-svg-core @fortawesome/free-solid-svg-icons @fortawesome/angular-fontawesome
di dokumen, maaf jika saya kehilangan sesuatu yang jelas.Dengan
Angular2
RC5 danangular-cli 1.0.0-beta.11-webpack.8
Anda dapat mencapainya dengan impor css.Cukup instal font yang mengagumkan:
dan kemudian impor font-mengagumkan di salah satu file gaya terkonfigurasi Anda:
(file gaya dikonfigurasikan dalam
angular-cli.json
)sumber
zone.js:101 - GET http://localhost:4200/node_modules/font-awesome/css/font-awesome.css 404 (Not Found)
... file benar-benar ada tetapi sepertinyalocalhost:4200
tidak berjalan dari root folder ini ... Cara mengemas font-mengagumkan kelocalhost:4200
folder root ...[email protected]
dan konfigurasi file styleangular-cli.json
tidak berfungsi ...1.0.0-beta.11-webpack.8
?Saya pikir saya akan memberikan resolusi saya untuk ini karena font-mengagumkan sekarang diinstal berbeda sesuai dengan dokumentasi mereka.
Mengapa itu fortawesome sekarang luput dari saya tetapi saya pikir saya akan tetap dengan versi terbaru daripada jatuh kembali ke font-mengagumkan yang lama.
Lalu saya mengimpornya ke scss saya
Semoga ini membantu
sumber
Banyak instruksi di atas berfungsi, saya sarankan melihat itu. Namun, sesuatu yang perlu diperhatikan:
Penggunaan
<i class="fas fa-coffee"></i>
tidak berhasil di proyek saya (proyek latihan baru yang baru berumur seminggu) setelah instalasi dan ikon sampel di sini juga disalin ke clipboard dari Font Awesome dalam seminggu terakhir.Ini
<i class="fa fa-coffee"></i>
berhasil . Jika setelah menginstal Font Awesome pada proyek Anda itu belum berfungsi, saya sarankan memeriksa kelas pada ikon Anda untuk menghapus 's' untuk melihat apakah itu berfungsi kemudian.sumber
Ada banyak jawaban bagus di sini. Tetapi jika Anda mencoba semuanya dan masih mendapatkan kotak alih-alih ikon fontawesome, periksa aturan css Anda. Dalam kasus saya, saya memiliki aturan berikut:
Dan itu menimpa font yang fontawesome. Hanya mengganti
*
pemilih untukbody
memecahkan masalah saya:sumber
body
harus berfungsi, pastikan, bahwa Anda tidak menimpa font di tempat lain, mungkin Anda menimpanyah*
ataup
tag seperti yang biasanya kita lakukan.Untuk Angular 6,
Pertama
npm install font-awesome --save
Tambahkan
node_modules/font-awesome/css/font-awesome.css
ke angular.json .Ingatlah untuk tidak menambahkan titik di depan
node_modules/
.sumber
Posting ini menjelaskan cara mengintegrasikan Fontawesome 5 ke Angular 6 (Angular 5 dan versi sebelumnya juga akan berfungsi, tetapi kemudian Anda harus menyesuaikan tulisan saya)
Opsi 1: Tambahkan File-css
Pro: Setiap ikon akan disertakan
Contra: Setiap ikon akan disertakan (ukuran aplikasi lebih besar karena semua font disertakan)
Tambahkan paket berikut:
Setelah itu tambahkan baris berikut ke angular.json Anda:
Opsi 2: Paket sudut
Pro: Ukuran aplikasi lebih kecil
Contra: Anda harus memasukkan setiap ikon yang ingin Anda gunakan secara terpisah
Gunakan paket FontAwesome 5 Angular:
Cukup ikuti dokumentasi mereka untuk menambahkan ikon. Mereka menggunakan svg-icons, jadi Anda hanya perlu menambahkan svgs / ikon, Anda benar-benar menggunakan.
sumber
Setelah beberapa percobaan, saya berhasil agar yang berikut berfungsi:
Instal dengan npm:
tambahkan ke file angular-cli-build.js :
tambahkan ke index.html
Kuncinya adalah untuk memasukkan jenis file font dalam file angular-cli-build.js
. + (css | css.map | otf | eot | svg | ttf | woff | woff2)
sumber
angular-cli-build.js
di cabang webpack terbaruJawaban yang diterima sudah usang.
Untuk angular 9 dan Fontawesome 5
Instal FontAwesome
NPM instal @ fortawesome / fontawesome-free - save
Daftarkan di angular.json di bawah gaya
"node_modules/@fortawesome/fontawesome-free/css/all.min.css"
Gunakan di aplikasi Anda
sumber
Sunting: Saya menggunakan sudut ^ 4.0.0 dan Elektron ^ 1.4.3
Jika Anda memiliki masalah dengan ElectronJS atau serupa dan memiliki semacam kesalahan 404, solusi yang mungkin adalah untuk menghapus Anda
webpack.config.js
, dengan menambahkan (dan dengan asumsi bahwa Anda memiliki modul node font-awesome diinstal melalui npm atau dalam file package.json) :Perhatikan bahwa konfigurasi webpack yang saya gunakan memiliki
src/app/dist
sebagai output, dan, pada gilirannya,assets
folder dibuat oleh webpack:Jadi pada dasarnya, apa yang sedang terjadi adalah:
dist
folder asetSekarang, ketika proses pembangunan akan selesai, aplikasi perlu mencari
.scss
file dan folder yang berisi ikon, menyelesaikannya dengan benar. Untuk mengatasinya, saya telah menggunakan ini di konfigurasi webpack saya:Akhirnya, dalam
.scss
file tersebut, saya mengimpor font .scss yang mengagumkan dan menentukan jalur font, yang, sekali lagidist/assets/font-awesome/fonts
,. Jalannya adalahdist
karena di webpack.config saya output.path diatur sebagaihelpers.root('src/app/dist');
Jadi, di
app.scss
:Perhatikan bahwa, dengan cara ini, ini akan menentukan jalur font (digunakan nanti dalam file .scss) dan mengimpor file .scss menggunakan
~font-awesome
untuk menyelesaikan jalur font-mengagumkan dinode_modules
.Ini cukup sulit, tapi itu satu-satunya cara yang saya temukan untuk mengatasi masalah kesalahan 404 dengan Electron.js
sumber
Mulai dari https://github.com/AngularClass/angular-starter , setelah menguji banyak kombinasi konfigurasi yang berbeda, inilah yang saya lakukan untuk membuatnya bekerja dengan AoT.
Seperti yang sudah dikatakan berkali-kali, di
app.component.scss
:Kemudian di webpack.config.js (sebenarnya webpack.commong.js di paket perdana):
Di bagian plugin:
Di bagian aturan:
sumber
Saya menghabiskan beberapa jam untuk mencoba versi terbaru dari FontAwesome 5.2.0 bekerja dengan AngularCLI 6.0.3 dan Material Design. Saya mengikuti instruksi instalasi npm dari situs web FontAwesome
Dokumen terbaru mereka memerintahkan Anda menginstal menggunakan yang berikut ini:
Setelah menghabiskan beberapa jam akhirnya saya menghapus dan menginstal font yang mengagumkan menggunakan perintah berikut (ini menginstal FontAwesome v4.7.0):
Sekarang berfungsi dengan baik menggunakan:
sumber
Font Awesome memberi Anda
scalable
ikon vektor yang dapat langsung dikustomisasi — ukuran, warna, drop shadow, dan apa pun yang dapat dilakukan dengan kekuatanCSS
.Buat proyek baru dan arahkan ke proyek.
Instal pustaka font-mengagumkan dan tambahkan ketergantungan ke
package.json
.Menggunakan CSS
Untuk menambahkan Font ikon CSS Luar Biasa ke aplikasi Anda ...
Menggunakan SASS
Buat proyek baru dengan SASS:
Untuk digunakan dengan proyek yang ada dengan
CSS
:Ganti nama
src/styles.css
menjadisrc/styles.scss
Ubahangular.json
untuk mencaristyles.scss
alih - alihcss
:Pastikan untuk mengubah
styles.css
kestyles.scss
.Buat file kosong
_variables.scss
disrc/
.Tambahkan yang berikut ke
_variables.scss
:Di
styles.scss
tambahkan yang berikut:sumber
Anda dapat menggunakan paket Angular Font Awesome
dan kemudian impor di modul Anda:
dan impor gaya dalam file sudut-cli:
lihat detail lebih lanjut tentang paket di perpustakaan npm:
dan kemudian gunakan seperti ini:
<i class="fa fa-coffee"></i>
sumber
Untuk menggunakan Font Awesome 5 di proyek Angular Anda, masukkan kode di bawah ini di file src / index.html.
Semoga berhasil!
sumber
Untuk fontawesome 5.x + cara paling sederhana adalah sebagai berikut,
instal menggunakan paket npm:
npm install --save @fortawesome/fontawesome-free
Dalam
styles.scss
file Anda termasuk:Catatan: jika Anda memiliki
_variables.scss
file maka lebih tepat untuk memasukkan$fa-font-path
di dalamnya dan tidak di dalamstyles.scss
file.sumber
Menggunakan KURANG (bukan SCSS) dan Angular 2.4.0 dan Webpack standar (bukan Angular CLI, yang berikut ini berfungsi untuk saya:
dan (di app.component.less):
dan tentu saja Anda mungkin memerlukan cuplikan yang jelas dan sangat intuitif ini (di module.loaders di webpack.conf)
Loader ada di sana untuk memperbaiki kesalahan jenis webpack
dan regexp cocok dengan referensi-svg tersebut (dengan atau tanpa spesifikasi versi). Tergantung pada pengaturan webpack Anda, Anda mungkin tidak membutuhkannya atau Anda mungkin memerlukan sesuatu yang lain.
sumber
Tambahkan di package.json Anda sebagai "devDependencies" font-awesome: "nomor versi"
Pergi ke Command Prompt ketik perintah npm yang Anda konfigurasikan.
sumber
Saya ingin menggunakan Font Awesome 5+ dan sebagian besar jawaban fokus pada versi yang lebih lama
Untuk Font Awesome 5+ baru proyek sudut belum dirilis, jadi jika Anda ingin menggunakan contoh-contoh yang disebutkan di atm situs web font mengagumkan Anda perlu menggunakan pekerjaan sekitar. (terutama fas, kelas jauh, bukan kelas fa)
Saya baru saja mengimpor cdn ke Font Awesome 5 di styles.css saya. Baru saja menambahkan ini jika ini membantu seseorang menemukan jawaban lebih cepat daripada yang saya lakukan :-)
Kode dalam Style.css
sumber
Jika karena alasan tertentu Anda tidak dapat menginstal paket throw npm. Anda selalu dapat mengedit index.html dan menambahkan font CSS yang luar biasa di kepala. Dan kemudian menggunakannya dalam proyek.
sumber
Untuk penggunaan webpack2:
dari pada
file-loader?name=/assets/fonts/[name].[ext]
sumber
Untuk Angular 9 menggunakan
ng
:Lihat Di Sini Untuk Informasi Lebih Lanjut
sumber
Sekarang ada beberapa cara untuk menginstal fontAwesome di Angular CLI:
Referensi di sini: https://github.com/FortAwesome/angular-fontawesome
sumber