Tailwind CSS Laravel 混合错误 - 强制安装 PostCSS 8

Tailwind CSS Laravel Mix Error - Forces PostCSS 8 to be installed

我最近创建了一个新的 laravel 8 项目,使用 Breeze 进行身份验证和顺风 css。 运行ning npm run watch 时一切正常,但一旦我 运行 npm run prod 我 运行 出错。我注意到 Tailwind 文档提到存在 PostCSS 问题,因此您需要卸载 运行

npm install tailwindcss@npm:@tailwindcss/postcss7-compat @tailwindcss/postcss7-compat postcss@^7 autoprefixer@^9

我这样做了,但是每次我 运行 npm run prod 现在构建在 98% 时退出并说

Additional dependencies must be installed. This will only take a moment.

Running: npm install postcss@^8.1 --save-dev --legacy-peer-deps
npm WARN browser-sync-webpack-plugin@2.2.2 requires a peer of webpack@^1 || ^2 || ^3 || ^4 but none is installed. You must install peer dependencies yourself.

Finished. Please run Mix again.

每次都会自动将 PostCSS 更新到 8.1。 之后,如果我再次 运行 npm run prod 它会一遍又一遍地执行完全相同的消息。

我已经尝试删除 browsersync 插件并重试,但仍然无效。

有人 运行 参与其中或找到了解决方案吗?

laravel-现在混合 v6 supports PostCSS8

根据tailwind docs,建议使用npm install tailwindcss@npm:@tailwindcss/postcss7-compat @tailwindcss/postcss7-compat postcss@^7 autoprefixer@^9

有了新的 Mix v6,运行 npm install tailwindcss@latest postcss@latest autoprefixer@latest

在此之后,npm run prod 将 运行 正常运行。

正如 Digvijay 上面提到的,新的 Mix v6 现在支持 PostCSS 8。所以 运行:

npm install tailwindcss@latest postcss@latest autoprefixer@latest

在您 运行 npm run prod 之后,您仍然会收到此消息:

Additional dependencies must be installed. This will only take a moment.

Running: npm install browser-sync browser-sync-webpack-plugin@2.2.2 --save-dev --legacy-peer-deps

npm WARN browser-sync-webpack-plugin@2.2.2 requires a peer of webpack@^1 || ^2 || ^3 || ^4 but none is installed. You must install peer dependencies yourself.

Finished. Please run Mix again.

要解决此问题,只需将 sudo 添加到 npm 命令的前面 运行:

sudo npm install browser-sync browser-sync-webpack-plugin@2.2.2 --save-dev --legacy-peer-deps

现在 运行 npm 运行 prod 它应该可以工作了!

您必须使用以下命令升级 laravel mix

npm install laravel-mix@latest