您的位置:首页 > 技术中心 > php框架 >

在 Laravel 中使用 Tailwind CSS

时间:2020-06-12 18:15

Tailwind Tailwind 是新的 CSS 实用程序框架,它很快成为我最喜欢的构建界面的方法。通常,尝试一个新的框架、包或语言的最困难的部分是建立起来。

建造 Tailwind 的人做了一项令人难以置信的工作,记录了这个过程,而且非常容易做到。但是,有时还是很高兴看到别人是怎么做到的。所以,让我们跳进去看看是怎么做到的。

入门

首先,假设我们开始一个新的 Laravel 项目。 我不会去介绍咋么设置它,你可以参考文档 点击这里。完成 Laravel 的所有设置之后,让我们看 Tailwind 的安装文档 点击这里.

在他们的文档,可以看到,最简单的方法就是把 CDN 放到你的项目中,然后开始编码。 这是很好的尝试,让我们进一步把它应用到我们的构建过程中。

安装

我们可以使用 NPM 或者 Yarn 命令把 Tailwind 拉到我们的项目中。

# 使用 npm
npm install tailwindcss --save-dev
# 使用 Yarn
yarn add tailwindcss --dev
当包拖入到我们的项目中,我们可以生成 Tailwind 的配置文件。我们可以随意调用配置文件, 我们将其称为 tailwind.js。现在,我们可以在项目根目录下运行以下命令。
./node_modules/.bin/tailwind init tailwind.js
Configuration
配置真的是小菜一碟,在项目的根路径中我们已经有了一个配置文件。打开并且查看它,你会发现,Tailwind 团队已经在文档注释和解析配置用途方面做出了出色的工作,你可以添加颜色,调整断点,间距等等。你会感觉到保持全局风格一致性是多么容易的事情啊!
让我们打开 resources/assets/sass 目录,laravel 已经包含了一些开箱即用的默认文件,你可以忽略并且删除它们,如果你想这么做的话。
Sass Setup
在当前目录中,我们可以创建 index.sass 文件(你可以任意命名这个文件,只是不要把它命名为 “late for dinner”!),现在,我们将会从 Tailwind 中复制以下代码
/**
 * 这个注入了Tailwind 的基本样式, 它混合了Normalize.css和一些额外的基本样式
 *
 * 你可以在以下链接中看到这些样式:
 * https://github.com/tailwindcss/tailwindcss/blob/master/css/preflight.css
 */
@tailwind preflight;
/**
 * 在这里你可以添加任何自定义的组件类; 任何你想要在实用类加载之前加载的东  西都可以定义在这里,以便他们仍然可以被实用类覆盖
 *
 * 例如:
 *
 * .btn { ... }
 * .form-input { ... }
 *
 * 或者是否使用前置处理器:
 *
 * @import "components/buttons";
 * @import "components/forms";
 */
/**
 * 这个注入了Tailwind所有的实用类,它的产生依赖于你的配置文件
 */
@tailwind utilities;
/**
 * 这里你可以添加任何自定义的实用类,他们不随着Tailwind开箱即用
 *
 * 例如 :
 *
 * .bg-pattern-graph-paper { ... }
 * .skew-45 { ... }
 *
 * 或者是否使用前置处理器..
 *
 * @import "utilities/background-patterns";
 * @import "utilities/skew-transforms";
 */

注意到在 @tailwind 导入的末尾有分号。删除它们。在这一点上,如果你正在使用 PHPStorm, 您可能会注意到,文件结构上遍布一堆红线, 不要担心,你可以忽略它们 或者找到一种方式将它们关闭。如果你找到了一种将它们关闭的方式,请写一篇教程告诉我;).

这是主 sass 文件,我们可以导入我们自定义的 sass 文件,同时在构建过程中可以把它们导出到 public/css 文件夹下面。在导入你自定义的 sass 文件的时候,一定要遵循导入的顺序,以避免你自定义的 css 被覆盖的问题。

构建过程

在构建过程中添加 Tailwind。 打开 webpack.mix.js 文件。 在顶部,右下方 let mix = require('laravel-mix'); 添加 let tailwindcss = require('tailwindcss');.

现在,在我们的 mix 中, 你可以像这样修改默认的 .sass 选项 (注意:如果你没有命名你的主 Sass 文件 index.sass 请确保在这更新它):

mix.js('resources/assets/js/app.js', 'public/js')
    .sass('resources/assets/sass/index.sass', 'public/css/app.css')
    .options({
      processCssUrls: false,
      postCss: [ tailwindcss('./tailwind.js') ],
    });

当前 Minx 依赖项存在未解决的问题。我们要将 Sass 和 Tailwind 一起使用,并且需要禁用 processCssUrls。更多信息请参考文档。 点击这里.

最后,运行 npm run prod 将 Tailwind 编译到 CSS 中。

结束

在你的模板文件,现在你可以添加 <link href="{{ asset('css/app.css') }}" rel="stylesheet"> 到你的 head 标签,并且开始使用 Tailwind 快速构建响应式 UI。

推荐教程:《Laravel教程》

以上就是在 Laravel 中使用 Tailwind CSS的详细内容,更多请关注gxlsystem.com其它相关文章!

热门排行

今日推荐

热门手游