BrowserslistError: Unknown browser kaios
BrowserslistError: Unknown browser kaios
我已经更新我的项目以使用最新版本的 node 和 yarn,在这次升级之后我的 React 项目现在不想使用 "browserslist"。
我 运行 "yarn start" 并得到这个错误:
./src/assets/css/material-dashboard-react.css?v=1.2.0 (./node_modules/css-loader??ref--6-oneOf-3-1!./node_modules/postcss-loader/src??postcss!./src/assets/css/material-dashboard-react.css?v=1.2.0)
BrowserslistError: Unknown browser kaios
at Array.reduce (<anonymous>)
at Array.some (<anonymous>)
at Array.filter (<anonymous>)
at new Promise (<anonymous>)
我有以下版本:
- 节点 v10.15.3
- npm 6.9.0
- yarn v1.15.2
还有我的package.json它的
{
"name": "frontend",
"version": "0.1.0",
"private": true,
"dependencies": {
"@material-ui/core": "3.9.3",
"@material-ui/icons": "3.0.2",
"axios": "0.18.0",
"classnames": "2.2.6",
"html2canvas": "^1.0.0-alpha.12",
"immutable": "3.8.2",
"jspdf": "^1.4.1",
"jspdf-autotable": "^2.3.5",
"moment": "2.22.2",
"npm-run-all": "4.1.5",
"perfect-scrollbar": "1.4.0",
"plotly.js": "1.47.1",
"react": "^16.6.3",
"react-currency-format": "1.0.0",
"react-dates": "18.2.2",
"react-dom": "^16.6.3",
"react-excel-workbook": "0.0.4",
"react-google-maps": "9.4.5",
"react-plotly.js": "2.3.0",
"react-redux": "6.0.0",
"react-router": "4.3.1",
"react-router-dom": "4.3.1",
"react-scripts": "2.1.8",
"react-select": "2.1.2",
"react-swipeable-views": "0.13.1",
"redux": "4.0.1",
"redux-immutable": "4.0.0",
"redux-persist": "5.10.0",
"redux-thunk": "2.3.0",
"weather-icons": "^1.3.2"
},
"scripts": {
"start": "react-scripts --max-old-space-size=8192 start",
"build": "react-scripts build",
"test": "react-scripts test --env=jsdom",
"eject": "react-scripts eject"
},
"browserslist": [
">1%",
"not dead",
"not ie <= 11",
"not op_mini all"
]
}
对我来说,这个问题与 css-loader 有关,我尝试解决这个问题并将 css-loader@2.1.1 添加到 package.json。我尝试了其他解决方案,但没有一个有效。
我今天也遇到了这个错误。问题似乎与 postcss-preset-env
有关。从 postcss 插件列表中删除它解决了我的问题。
我决定继续使用 autoprofixer
和 postcss-custom-properties
而不是 postcss-preset-env
。
我查看了代码,这是因为 caniuse
的更新支持查询 Kai OS(我猜是印度的一些手机 OS?)所以如果你今天添加 postcss-preset-env
并且将 caniuse-lite
作为之前安装的一些包的依赖项,您可能会遇到错误
tl;博士
删除 node_modules 并锁定然后再次安装所有依赖项
我遇到了同样的问题,通过将 package.json
中 caniuse-lite
的版本修复为上一版本,我能够解决该问题。
附加到 package.json
"resolutions": {
"caniuse-lite": "1.0.30000957"
},
运行 $ yarn
并检查 yarn.lock
是否使用预期版本:
...
caniuse-lite@1.0.30000957, caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000939, caniuse-lite@^1.0.30000955, caniuse-lite@^1.0.30000957:
version "1.0.30000957"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000957.tgz#fb1026bf184d7d62c685205358c3b24b9e29f7b3"
integrity sha512-8wxNrjAzyiHcLXN/iunskqQnJquQQ6VX8JHfW5kLgAPRSiSuKZiNfmIkP5j7jgyXqAQBSoXyJxfnbCFS0ThSiQ==
...
TL;DR rm yarn.lock; yarn
长文:
browserslist
和 postcss-preset-env
都可能是二级(深度)依赖。这在 create-react-app
中很常见。但是,yarn upgrade
不会升级锁定的子依赖项,执行此操作的命令违反 yarn 的理念。
可以说,这些库之一应该限制所需的依赖版本,并将其留给 yarn 来解决好版本。如果是这样,那么 yarn
是正确的。
可能可以通过为您的项目创建一些 {browserslist, caniuse-lite, postcss-preset-env}
直接 [dev] 依赖项来解决此问题。
或者,更短,rm yarn.lock; yarn
✨
参考文献:
对于那些升级到 Create React App 3 的人来说,这个错误是由于 browserslist@<4.5.5
和 caniuselite@>1.0.30000957
运行 不兼容造成的。
运行 npm ls browserslist
查看旧版本 browserslist
的安装位置并升级那些依赖于 browserslist
的软件包
Yarn 用户可以按照提供的一些现有答案解决此问题。
我是 NPM 用户并通过安装 browserslist@^4.5.5
作为根依赖项解决了这个问题,因此传递性 browserslist
依赖项被删除到根。
我已经更新我的项目以使用最新版本的 node 和 yarn,在这次升级之后我的 React 项目现在不想使用 "browserslist"。
我 运行 "yarn start" 并得到这个错误:
./src/assets/css/material-dashboard-react.css?v=1.2.0 (./node_modules/css-loader??ref--6-oneOf-3-1!./node_modules/postcss-loader/src??postcss!./src/assets/css/material-dashboard-react.css?v=1.2.0)
BrowserslistError: Unknown browser kaios
at Array.reduce (<anonymous>)
at Array.some (<anonymous>)
at Array.filter (<anonymous>)
at new Promise (<anonymous>)
我有以下版本:
- 节点 v10.15.3
- npm 6.9.0
- yarn v1.15.2
还有我的package.json它的
{
"name": "frontend",
"version": "0.1.0",
"private": true,
"dependencies": {
"@material-ui/core": "3.9.3",
"@material-ui/icons": "3.0.2",
"axios": "0.18.0",
"classnames": "2.2.6",
"html2canvas": "^1.0.0-alpha.12",
"immutable": "3.8.2",
"jspdf": "^1.4.1",
"jspdf-autotable": "^2.3.5",
"moment": "2.22.2",
"npm-run-all": "4.1.5",
"perfect-scrollbar": "1.4.0",
"plotly.js": "1.47.1",
"react": "^16.6.3",
"react-currency-format": "1.0.0",
"react-dates": "18.2.2",
"react-dom": "^16.6.3",
"react-excel-workbook": "0.0.4",
"react-google-maps": "9.4.5",
"react-plotly.js": "2.3.0",
"react-redux": "6.0.0",
"react-router": "4.3.1",
"react-router-dom": "4.3.1",
"react-scripts": "2.1.8",
"react-select": "2.1.2",
"react-swipeable-views": "0.13.1",
"redux": "4.0.1",
"redux-immutable": "4.0.0",
"redux-persist": "5.10.0",
"redux-thunk": "2.3.0",
"weather-icons": "^1.3.2"
},
"scripts": {
"start": "react-scripts --max-old-space-size=8192 start",
"build": "react-scripts build",
"test": "react-scripts test --env=jsdom",
"eject": "react-scripts eject"
},
"browserslist": [
">1%",
"not dead",
"not ie <= 11",
"not op_mini all"
]
}
对我来说,这个问题与 css-loader 有关,我尝试解决这个问题并将 css-loader@2.1.1 添加到 package.json。我尝试了其他解决方案,但没有一个有效。
我今天也遇到了这个错误。问题似乎与 postcss-preset-env
有关。从 postcss 插件列表中删除它解决了我的问题。
我决定继续使用 autoprofixer
和 postcss-custom-properties
而不是 postcss-preset-env
。
我查看了代码,这是因为 caniuse
的更新支持查询 Kai OS(我猜是印度的一些手机 OS?)所以如果你今天添加 postcss-preset-env
并且将 caniuse-lite
作为之前安装的一些包的依赖项,您可能会遇到错误
tl;博士 删除 node_modules 并锁定然后再次安装所有依赖项
我遇到了同样的问题,通过将 package.json
中 caniuse-lite
的版本修复为上一版本,我能够解决该问题。
附加到 package.json
"resolutions": {
"caniuse-lite": "1.0.30000957"
},
运行 $ yarn
并检查 yarn.lock
是否使用预期版本:
...
caniuse-lite@1.0.30000957, caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000939, caniuse-lite@^1.0.30000955, caniuse-lite@^1.0.30000957:
version "1.0.30000957"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000957.tgz#fb1026bf184d7d62c685205358c3b24b9e29f7b3"
integrity sha512-8wxNrjAzyiHcLXN/iunskqQnJquQQ6VX8JHfW5kLgAPRSiSuKZiNfmIkP5j7jgyXqAQBSoXyJxfnbCFS0ThSiQ==
...
TL;DR rm yarn.lock; yarn
长文:
browserslist
和 postcss-preset-env
都可能是二级(深度)依赖。这在 create-react-app
中很常见。但是,yarn upgrade
不会升级锁定的子依赖项,执行此操作的命令违反 yarn 的理念。
可以说,这些库之一应该限制所需的依赖版本,并将其留给 yarn 来解决好版本。如果是这样,那么 yarn
是正确的。
可能可以通过为您的项目创建一些 {browserslist, caniuse-lite, postcss-preset-env}
直接 [dev] 依赖项来解决此问题。
或者,更短,rm yarn.lock; yarn
✨
参考文献:
对于那些升级到 Create React App 3 的人来说,这个错误是由于 browserslist@<4.5.5
和 caniuselite@>1.0.30000957
运行 不兼容造成的。
运行 npm ls browserslist
查看旧版本 browserslist
的安装位置并升级那些依赖于 browserslist
Yarn 用户可以按照提供的一些现有答案解决此问题。
我是 NPM 用户并通过安装 browserslist@^4.5.5
作为根依赖项解决了这个问题,因此传递性 browserslist
依赖项被删除到根。