17

我正在尝试在 Laravel 5.7 中包含 Font Awesome 工具包。

这些是我采取的步骤:

1) 运行npm install --save-dev @fortawesome/fontawesome-free

2)检查文件夹node_modules/,一切看起来都很好。

$fa-font-path: "../webfonts";

// Bootstrap
@import '~bootstrap/scss/bootstrap';
@import '~@fortawesome/fontawesome-free/scss/fontawesome.scss';
@import '~@fortawesome/fontawesome-free/scss/solid.scss';
@import '~@fortawesome/fontawesome-free/scss/regular.scss';
@import '~@fortawesome/fontawesome-free/scss/brands.scss';

3)然后我跑了……

npm run development -- --watch

4) 我在public/fonts/vendor/@fortawesome/fontawesome-free/.

但是,当我转到浏览器时,图标如下所示:

down_icon

4

2 回答 2

44

Laravel 5.7 到 7.x 使用 Font Awesome 5(正确的方式)

构建你的webpack.mix.js配置。

mix.setResourceRoot('../');
mix.setPublicPath('public')

mix.js('resources/js/app.js', 'public/js')
   .sass('resources/sass/app.scss', 'public/css');

通过像npm这样的包管理器安装最新的免费版Font Awesome

npm install @fortawesome/fontawesome-free --save-dev

这个依赖项现在应该在你的package.json中。

// Font Awesome
"devDependencies": {
    "@fortawesome/fontawesome-free": "^5.15.3",

在您的主 SCSS 文件中,/ 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 production

最后,在 Blade 模板/布局中引用生成的 CSS 文件。

<link type="text/css" rel="stylesheet" href="{{ mix('css/app.css') }}">
于 2018-09-21T04:06:53.740 回答
11

更新你的 webpack.mix.js 配置如下:

mix.js('resources/js/app.js', 'public/js')
   .sass('resources/sass/app.scss', 'public/css');

mix.setPublicPath('public');
mix.setResourceRoot('../');

在终端中输入“npm run dev”并回车

于 2019-04-08T07:58:38.560 回答