首页 > 解决方案 > 在 laravel 中处理前端大型项目

问题描述

我们的团队,与 laravel 合作,我们想开始一个大型项目。前端项目将使用 Html Css Bootstrap jquery Sass 编写,我们的 task runner 是 Gulp


我们的项目目录将如何?sass 目录以及我的文件和图像它们去哪里了?

标签: htmlcsslaravelsasslarge-scale

解决方案


你可以使用 Laravel Mix 编译 CSS 和 JavaScript 预处理器。因此,您将所有资产存储到资源/资产文件夹中。

Laravel Mix 提供了一个流畅的 API,用于使用几个常见的 CSS 和 JavaScript 预处理器为您的应用程序定义 webpack 构建步骤。

要使用 laravel mix,您必须先安装nodenpm.

然后分别在 resources/app/sass 目录和 resources/sass 中创建文件 app.js 和 app.scss。然后打开 webpack.mix.js 文件,该文件将位于您的项目根目录中,在 webpack.mix.js 文件中写入以下代码

在 webpack.mix.js 文件中(你可以在你的项目根目录看到这个文件)

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

现在让我们看看上面两行的含义是什么?

mix.js('resources/assets/js/app.js', 'public/js')说要读取app.js内容(存储在 resources/js 目录中),将它们拉出来并在混合后将它们放在 public/js 中。

对于mix.sass. 由于它使用 SAAS 兼容,因此您可以使用基于 CSS 或 SAAS 的语法来定义您的布局。无论如何,Webpack 将它们编译为单个 CSS。现在在 master.blade.php 中,您只需分别对 JS 和 CSS 资源进行这两个调用:

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

<link rel="stylesheet" href="{!! asset('css/app.css') !!}">

现在运行npm run dev命令。它将编译您的 CSS 和 JS 文件并将构建放在公共文件夹中。

有关详细说明,您可以查看

https://laravel.com/docs/5.7/mix

https://appdividend.com/2018/02/19/laravel-mix-compiling-assets-tutorial/


推荐阅读