Laravel 7无法显示出色的字体图标

问题描述

我想在laravel / Vue项目中使用Awesome字体图标:

我安装了字体:

npm install font-awesome --save
将以下行添加到resources / sass / app.scss中:@import“ node_modules / font-awesome / scss / font-awesome.scss”;
npm run dev

我的布局文件的相关部分:

<!doctype html>
<html lang="{{ str_replace('_','-',app()->getLocale()) }}">

<head>
    <Meta charset="utf-8">
    <Meta name="viewport" content="width=device-width,initial-scale=1">

    <!-- CSRF Token -->
    <Meta name="csrf-token" content="{{ csrf_token() }}">

    <title>{{ config('app.name','Laravel') }}</title>

    <!-- Scripts -->
    <script src="{{ asset('js/app.js') }}" defer></script>

    <!-- Fonts -->
    <link rel="dns-prefetch" href="//fonts.gstatic.com">
    <link href="https://fonts.googleapis.com/css?family=Nunito" rel="stylesheet">

但是当我在html页面中使用任何很棒的图标时,例如

<i class="fa fa-copy"></i>

我总是得到一种虚拟图标:

enter image description here

然后我找到了以下页面https://www.itsolutionstuff.com/post/how-to-install-and-use-font-awesome-icons-in-laravelexample.html。 dI尝试添加

<link type="text/css" rel="stylesheet" href="{{ mix('css/app.css') }}">

到我的布局html文件的字体部分。但是我仍然得到了虚拟图标。

知道什么问题吗?

此致

休伯特

解决方法

您使用的是旧版 Font Awesome。

npm install @fortawesome/fontawesome-free

将以下内容添加到 resources/sass/app.scss:

// Font Awesome
@import '~@fortawesome/fontawesome-free/scss/fontawesome';
@import '~@fortawesome/fontawesome-free/scss/regular';
@import '~@fortawesome/fontawesome-free/scss/solid';
@import '~@fortawesome/fontawesome-free/scss/brands';

最后,

npm run dev