如何在Laravel中使用Scss文件

时间:2018-06-20 06:39:53

标签: laravel sass

我已经下载了免费的HTML主题。

如果我在浏览器中打开主题的index.html文件,则效果很好。

但是,现在我需要将此主题集成到我的Laravel应用程序中。如果我检查浏览器中加载的index.html文件中的元素,则可以看到某些.scss files正在被调用。

scss folder位于主题文件夹中,但我真的不知道如何将其包含到我的项目中

2 个答案:

答案 0 :(得分:6)

您可以将SASS视为高级CSS,它为您提供了更多功能,例如使变量更容易使用的CSS语法等……但是,由于浏览器不了解SASS,您必须将SASS编译为CSS,因此有多种方法可以执行那个。

首先,如果您的主题文件夹已经符合SAS​​S(CSS文件夹)的要求,则可以使用它,并且如果要与Laravel集成,请按照以下步骤操作

  1. 将所有内容复制到SASS文件夹中,然后将其放置在“ / resources / assets / sass”中 Laravel可以找到它们进行编译

  2. 现在您必须将SASS编译为CSS,您可以手动使用gulp或 Laravel混合功能已经由Laravel为您实现

  3. Laravel附带packages.json文件,您将在应用程序根目录中找到该文件 目录,因此在能够编译SASS之前,必须在以下目录中运行npm install 您的根目录(确保已安装npm和节点)

  4. 在运行npm install之后,您现在可以运行其中之一来编译任何 您在“资源/资产/ sass”中的sass文件

    npm run dev //this will compile one time only
    npm run watch //this will keep watching for any changes and compile 
    automatically
    

现在,您的sass文件应该已经编译为CSS,您可以在“ public / css”文件夹中找到已编译的CSS文件。

希望您发现这对您有所帮助,您可以在Laravel文档前端部分(特别是Laravel Mix here

)中阅读有关此内容的更多信息。

答案 1 :(得分:0)

Laravel 有一个名为 webpack.mix.js 的文件,您可以在其中通过使用相应的参数调用 mix.js/sass 来编辑所有前端资产编译。它位于项目的根目录。

1- 在资源文件夹中创建一个新文件夹并使用 app.scss 文件将其命名为 scss。完整的树将是 scss/app.scss

2- 转到 webpack.mix.js 并添加新行:mix.sass('resources/sass/app.scss', 'public/css');。该方法的第一个参数是源文件,第二个参数是目标文件夹。

3- 在 app.scss 文件中使用 @import 'file/source' 导入所有主题 scss 文件;

4- 在 Laravel 项目文件夹中打开终端/cmd 并运行 npm run dev/watch 来编译你的 scss 文件,最后你的 css 文件结果将位于 public/css/app .css。

5- 将 app.css 导入您的 Html head 部分并重新加载页面。如果样式不起作用,请按 ctrl + f5 清理浏览器缓存。