当我用laravel-breeze运行npm时出现节点错误



当我运行npm run devnpm run watch时,我遇到了这个错误,但我没有找到问题所在。它发生在全新的Laravel 8应用程序中。

当我使用开发命令时,似乎会发生这种情况

ERROR in ./resources/css/app.css
Module build failed (from ./node_modules/css-loader/index.js):
ModuleBuildError: Module build failed (from ./node_modules/postcss-loader/src/index.js):
TypeError: [(...variantsValue),(...extensions)].flat is not a function
at /var/www/html/smart_recipe/node_modules/tailwindcss/lib/util/resolveConfig.js:219:73
at baseMergeDeep (/var/www/html/smart_recipe/node_modules/lodash/_baseMergeDeep.js:42:7)
at /var/www/html/smart_recipe/node_modules/lodash/_baseMerge.js:27:7
at /var/www/html/smart_recipe/node_modules/lodash/_createBaseFor.js:17:11
at baseMerge (/var/www/html/smart_recipe/node_modules/lodash/_baseMerge.js:24:3)
at /var/www/html/smart_recipe/node_modules/lodash/mergeWith.js:36:3
at /var/www/html/smart_recipe/node_modules/lodash/_createAssigner.js:30:9
at apply (/var/www/html/smart_recipe/node_modules/lodash/_apply.js:15:25)
at /var/www/html/smart_recipe/node_modules/lodash/_overRest.js:32:12
at mergeVariantExtensions (/var/www/html/smart_recipe/node_modules/tailwindcss/lib/util/resolveConfig.js:218:33)
at resolveVariants (/var/www/html/smart_recipe/node_modules/tailwindcss/lib/util/resolveConfig.js:235:10)
at resolveConfig (/var/www/html/smart_recipe/node_modules/tailwindcss/lib/util/resolveConfig.js:271:15)
at /var/www/html/smart_recipe/node_modules/tailwindcss/lib/index.js:77:37
at /var/www/html/smart_recipe/node_modules/tailwindcss/lib/processTailwindFeatures.js:52:20
at LazyResult.run (/var/www/html/smart_recipe/node_modules/postcss/lib/lazy-result.js:288:14)
at LazyResult.asyncTick (/var/www/html/smart_recipe/node_modules/postcss/lib/lazy-result.js:212:26)
at LazyResult.asyncTick (/var/www/html/smart_recipe/node_modules/postcss/lib/lazy-result.js:225:14)
at /var/www/html/smart_recipe/node_modules/postcss/lib/lazy-result.js:217:17
at runLoaders (/var/www/html/smart_recipe/node_modules/webpack/lib/NormalModule.js:316:20)
at /var/www/html/smart_recipe/node_modules/loader-runner/lib/LoaderRunner.js:367:11
at /var/www/html/smart_recipe/node_modules/loader-runner/lib/LoaderRunner.js:233:18
at context.callback (/var/www/html/smart_recipe/node_modules/loader-runner/lib/LoaderRunner.js:111:13)
at Promise.resolve.then.then.catch (/var/www/html/smart_recipe/node_modules/postcss-loader/src/index.js:208:9)
@ ./resources/css/app.css

我遇到了同样的问题,花了5个小时寻找解决方案,但没有找到。经过多次搜索,我发现了这个

"Tailwind CSS v2.0不再支持Node.js 8或10。要构建CSS,您需要确保在本地和CI环境中都运行Node.js 12.13.0或更高版本">

位于https://tailwindcss.com/docs/upgrading-to-v2

所以我意识到这个问题出现在我的Node版本中,它是10.x所以我从windows机器上卸载了Node,并下载了LTS版本(14.x(。所以考虑更新你的Node版本,它会解决这个问题,就像它对我有效一样。旧的节点版本可能没有Tailwind CSS2实现的扁平功能,这是一个抛出的错误。

我在安装Breeze后遇到了完全相同的问题。。。不幸的是,npm错误消息没有给出真正发生了什么的线索!

感谢@DaniyalGondal,我发现我的节点版本由于顺风V2的要求而引发了错误(https://tailwindcss.com/docs/upgrading-to-v2)Breeze带来的。。。所以我确实在ubuntu20 下使用sudo n latest升级了我的节点版本

不要忘记在升级后重新启动您的终端,并使用node --version检查您的节点是否正确升级

如果节点版本高于12.13.0,那么现在npm run watchnpm run dev应该可以正常工作!

最新更新