Tailwind CSS 是 PostCSS 写的,而 Next.js 又默认内置的 PostCSS,因此你不需要额外安装 PostCSS。
官方文档有一份 指导,如何自定义 PostCSS 的配置。对于整合 Tailwind CSS,重点在于在 PostCSS 的配置中加入 tailwindcss
。我整了一份基于 Next.js 9.2 的配置和 Tailwind CSS 1.4.0 的配置:
let plugins = {
'tailwindcss': {},
'postcss-flexbugs-fixes': {},
'postcss-preset-env': {
autoprefixer: {
flexbox: 'no-2009',
},
stage: 3,
features: {
'custom-properties': false,
},
},
}
module.exports = {
plugins: plugins
};
注意,根据 Next.js 的 开发者说明,一旦你写了 postcss.config.js
,意味着你不需要 Next.js 来帮你自动管理 PostCSS 的配置。因此你在配置文件中用的插件,全部需要你手动安装而不能依赖 Next.js 本身的依赖:
npm install --save-dev tailwindcss postcss-flexbugs-fixes postcss-preset-env
然后在 styles/tailwind.css
中引入 Tailwind CSS:
/* purgecss start ignore */
@tailwind base;
@tailwind components;
/* purgecss end ignore */
@tailwind utilities;
添加好后,在你的 pages/_app.js
中 import ../styles/tailwind.css
文件即可。
StaticKit 写了一篇 文章,关于如何整合 Tailwind CSS 到 Next.js 中。我亦其 备份 到 wiki。