Error: PostCSS plugin autoprefixer requires PostCSS 8. Update PostCSS or downgrade this plugin
Error: PostCSS plugin autoprefixer requires PostCSS 8. Update PostCSS or downgrade this plugin
每当我 运行 npm start 时,我都会收到此错误。
我尝试了几个修复程序,但其中 none 个对我有用。我尝试将 autoprefixer 的版本更改为 9.8.6,但没有用。
请帮我解决这个问题
这是我的package.json
{
"name": "reactgallery",
"version": "0.1.0",
"private": true,
"dependencies": {
"@testing-library/jest-dom": "^4.2.4",
"@testing-library/react": "^9.5.0",
"@testing-library/user-event": "^7.2.1",
"react": "^16.13.1",
"react-dom": "^16.13.1",
"react-scripts": "3.4.3"
},
"scripts": {
"start": "npm run watch:css && react-scripts start",
"build": "npm run build:css && react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject",
"build:css": "postcss src/assets/tailwind.css -o src/assets/main.css",
"watch:css": "postcss src/assets/tailwind.css -o src/assets/main.css"
},
"eslintConfig": {
"extends": "react-app"
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
},
"devDependencies": {
"autoprefixer": "^9.8.6",
"postcss-cli": "^7.1.2",
"tailwindcss": "^1.8.10"
}
}
我不确定,但你可以尝试将 postcss 安装为依赖项吗?
npm i postcss
快速修复
将您的自动前缀降级到版本 9,使用
"autoprefixer": "^9.0.0"
在您的开发依赖项中。
更多详情
PostCSS 已更新到版本 8,但是,PostCSS CLI 尚未更新以处理使用新 PostCSS 8+ API 的 PostCSS 插件。 Autoprefixer 使用新的 PostCSS 8 API 自版本 10.
这在 PostCSS GitHub 页面的 已知问题 下有记录。
一旦更新了 PostCSS CLI 以处理使用新 PostCSS 8+ API 的插件,这可能就不是问题了。但在那之前,您可能需要降级一些 PostCSS 插件以避免错误。
好的,对我来说,删除 package-lock.json 并安装:
"tailwindcss": "^1.8.10"
"postcss-cli": "^7.1.0"
"autoprefixer": "^9.7.5"
以下组合自 2020 年 10 月起有效
...
"dependencies": {
"autoprefixer": "^9.8.6",
"postcss-cli": "^8.1.0",
"tailwindcss": "^1.9.2"
}
根据文档 link 将放弃对旧 NodeJS 的一些支持,您必须手动升级这些包。在我的示例中,基于 webpack 的项目只需要更新这些依赖项:
"dependencies": {
"autoprefixer": "^10.0.2",
"postcss": "^8.1.7",
"postcss-loader": "^4.0.4"
}
所以你不需要降级autoprefixer :)
对于Next.js10你只需要做
npm install tailwindcss@latest postcss@latest autoprefixer@latest
如果您遇到此问题并且使用的是 Tailwind CSS v2,请尝试此操作
npm uninstall tailwindcss postcss autoprefixer
npm install tailwindcss@npm:@tailwindcss/postcss7-compat postcss@^7 autoprefixer@^9
来源:https://tailwindcss.com/docs/installation#post-css-7-compatibility-build
我在使用 Laravel-mix 5 和 PostCSS 8 以及 Tailwind 2 时遇到了这个问题。
使用 Laravel-mix 6(目前是测试版)解决了这个问题。
npm install laravel-mix@next --save-dev
这些步骤对我有用。这是来自 github
npm uninstall tailwindcss postcss autoprefixer
npm install tailwindcss@latest postcss@latest autoprefixer@latest
npx tailwindcss init -p
npm uninstall tailwindcss postcss autoprefixer
npm install tailwindcss@npm:@tailwindcss/postcss7-compat postcss@^7 autoprefixer@^9
"dependencies": {
"autoprefixer": "^9.8.6",
"postcss": "^8.0.0",
"postcss-cli": "^8.1.0",
"tailwindcss": "npm:@tailwindcss/postcss7-compat@^2.0.2",
},
依赖对象和版本可以直接在 package.json
文件中修改并且有效
使用 PostCSS 7 compatibility build
的官方解决方案修复
yarn remove tailwindcss postcss autoprefixer
yarn add -D tailwindcss@npm:@tailwindcss/postcss7-compat @tailwindcss/postcss7-compat postcss@^7 autoprefixer@^9
很简单,
npm install postcss@^8
对我来说效果很好。
每当我 运行 npm start 时,我都会收到此错误。 我尝试了几个修复程序,但其中 none 个对我有用。我尝试将 autoprefixer 的版本更改为 9.8.6,但没有用。 请帮我解决这个问题
这是我的package.json
{
"name": "reactgallery",
"version": "0.1.0",
"private": true,
"dependencies": {
"@testing-library/jest-dom": "^4.2.4",
"@testing-library/react": "^9.5.0",
"@testing-library/user-event": "^7.2.1",
"react": "^16.13.1",
"react-dom": "^16.13.1",
"react-scripts": "3.4.3"
},
"scripts": {
"start": "npm run watch:css && react-scripts start",
"build": "npm run build:css && react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject",
"build:css": "postcss src/assets/tailwind.css -o src/assets/main.css",
"watch:css": "postcss src/assets/tailwind.css -o src/assets/main.css"
},
"eslintConfig": {
"extends": "react-app"
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
},
"devDependencies": {
"autoprefixer": "^9.8.6",
"postcss-cli": "^7.1.2",
"tailwindcss": "^1.8.10"
}
}
我不确定,但你可以尝试将 postcss 安装为依赖项吗?
npm i postcss
快速修复
将您的自动前缀降级到版本 9,使用
"autoprefixer": "^9.0.0"
在您的开发依赖项中。
更多详情
PostCSS 已更新到版本 8,但是,PostCSS CLI 尚未更新以处理使用新 PostCSS 8+ API 的 PostCSS 插件。 Autoprefixer 使用新的 PostCSS 8 API 自版本 10.
这在 PostCSS GitHub 页面的 已知问题 下有记录。
一旦更新了 PostCSS CLI 以处理使用新 PostCSS 8+ API 的插件,这可能就不是问题了。但在那之前,您可能需要降级一些 PostCSS 插件以避免错误。
好的,对我来说,删除 package-lock.json 并安装:
"tailwindcss": "^1.8.10"
"postcss-cli": "^7.1.0"
"autoprefixer": "^9.7.5"
以下组合自 2020 年 10 月起有效
...
"dependencies": {
"autoprefixer": "^9.8.6",
"postcss-cli": "^8.1.0",
"tailwindcss": "^1.9.2"
}
根据文档 link 将放弃对旧 NodeJS 的一些支持,您必须手动升级这些包。在我的示例中,基于 webpack 的项目只需要更新这些依赖项:
"dependencies": {
"autoprefixer": "^10.0.2",
"postcss": "^8.1.7",
"postcss-loader": "^4.0.4"
}
所以你不需要降级autoprefixer :)
对于Next.js10你只需要做
npm install tailwindcss@latest postcss@latest autoprefixer@latest
如果您遇到此问题并且使用的是 Tailwind CSS v2,请尝试此操作
npm uninstall tailwindcss postcss autoprefixer
npm install tailwindcss@npm:@tailwindcss/postcss7-compat postcss@^7 autoprefixer@^9
来源:https://tailwindcss.com/docs/installation#post-css-7-compatibility-build
我在使用 Laravel-mix 5 和 PostCSS 8 以及 Tailwind 2 时遇到了这个问题。
使用 Laravel-mix 6(目前是测试版)解决了这个问题。
npm install laravel-mix@next --save-dev
这些步骤对我有用。这是来自 github
npm uninstall tailwindcss postcss autoprefixer
npm install tailwindcss@latest postcss@latest autoprefixer@latest
npx tailwindcss init -p
npm uninstall tailwindcss postcss autoprefixer
npm install tailwindcss@npm:@tailwindcss/postcss7-compat postcss@^7 autoprefixer@^9
"dependencies": {
"autoprefixer": "^9.8.6",
"postcss": "^8.0.0",
"postcss-cli": "^8.1.0",
"tailwindcss": "npm:@tailwindcss/postcss7-compat@^2.0.2",
},
依赖对象和版本可以直接在 package.json
文件中修改并且有效
使用 PostCSS 7 compatibility build
的官方解决方案修复yarn remove tailwindcss postcss autoprefixer
yarn add -D tailwindcss@npm:@tailwindcss/postcss7-compat @tailwindcss/postcss7-compat postcss@^7 autoprefixer@^9
很简单,
npm install postcss@^8
对我来说效果很好。