Javascript BrowserslistError:未知的浏览器kaios
我已经更新了我的项目以使用node和Thread的最新版本,在这次升级之后,我的react项目不想使用“browserslist” 我运行“纱线开始”并得到以下错误:Javascript BrowserslistError:未知的浏览器kaios,javascript,reactjs,react-scripts,Javascript,Reactjs,React Scripts,我已经更新了我的项目以使用node和Thread的最新版本,在这次升级之后,我的react项目不想使用“browserslist” 我运行“纱线开始”并得到以下错误: ./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/materia
./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>)
/src/assets/css/material dashboard react.css?v=1.2.0(./node_modules/css loader??ref--6-oneOf-3-1!。/node_modules/postss loader/src??postss!。/src/assets/css/material dashboard react.css?v=1.2.0)
BrowserslistError:未知的浏览器kaios
在Array.reduce()处
at Array.some()
在Array.filter()处
在新的承诺()
我有以下版本:
- 节点v10.15.3
- npm 6.9.0
- 纱线v1.15.2
{
"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"
]
}
{
“名称”:“前端”,
“版本”:“0.1.0”,
“私人”:没错,
“依赖项”:{
“@material ui/core”:“3.9.3”,
“@material ui/图标”:“3.0.2”,
“axios”:“0.18.0”,
“类名”:“2.2.6”,
“html2canvas”:“^1.0.0-alpha.12”,
“不可变”:“3.8.2”,
“jspdf”:“^1.4.1”,
“jspdf自动表格”:“^2.3.5”,
“时刻”:“2.22.2”,
“npm全部运行”:“4.1.5”,
“完美滚动条”:“1.4.0”,
“plotly.js”:“1.47.1”,
“反应”:“^16.6.3”,
“反应货币格式”:“1.0.0”,
“反应日期”:“18.2.2”,
“react dom”:“^16.6.3”,
“react excel工作簿”:“0.0.4”,
“反应谷歌地图”:“9.4.5”,
“react plotly.js”:“2.3.0”,
“react redux”:“6.0.0”,
“反应路由器”:“4.3.1”,
“反应路由器dom”:“4.3.1”,
“反应脚本”:“2.1.8”,
“反应选择”:“2.1.2”,
“react swipeable视图”:“0.13.1”,
“redux”:“4.0.1”,
“redux不可变”:“4.0.0”,
“redux持久化”:“5.10.0”,
“redux thunk”:“2.3.0”,
“天气图标”:“^1.3.2”
},
“脚本”:{
“开始”:“反应脚本--最大旧空间大小=8192开始”,
“构建”:“反应脚本构建”,
“测试”:“反应脚本测试--env=jsdom”,
“弹出”:“反应脚本弹出”
},
“浏览者”:[
">1%",
“没有死”,
“不是ie我今天也遇到了这个错误。这个问题似乎与postsss preset env
有关。从postsss插件列表中删除它解决了我的问题
我决定继续使用autoprofixer
和postsss自定义属性
,而不是postsss预设环境
,我查看了代码,这是因为caniuse
的更新支持Kai操作系统的查询(我想是印度的一些移动操作系统吧?)因此,如果您今天添加了postss preset env
,并将caniuse lite
作为以前安装的某些软件包的依赖项,您可能会遇到错误
博士
移除node_模块并锁定,然后再次安装所有依赖项我面临同样的问题,通过将包中的caniuse lite
版本与上一个版本一起修复,我能够解决该问题
附加到package.json
"resolutions": {
"caniuse-lite": "1.0.30000957"
},
运行$warn
并检查warn.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;DRrm-warn.lock;warn
长篇散文:
browserslist
和postsss-preset-env
可能都是二级(深层)依赖项。这在create-react-app
中很常见。但是,warn-upgrade
不会升级锁定的子依赖项,并且这样做的命令违背了warn的理念
可以说,其中一个库应该限制所需的依赖项版本,并让Thread来解析好的版本。如果是这样,那么Thread
是正确的
通过使一些{browserslist、caniuse-lite、postsss-preset-env}
直接依赖于项目的[dev],可以解决这个问题
或者,短一点,rm warn.lock;warn
✨
参考资料:
对于升级到创建React App 3的用户,此错误是由于与browserslist@1.0.30000957
一起运行
运行npm ls browserslist
以查看browserslist
的较旧版本的安装位置,并升级那些依赖于browserslist
纱线用户可以通过遵循提供的一些现有答案来解决此问题
我是一名NPM用户,通过将browserslist@^4.5.5
安装为根依赖项解决了这一问题,因此可传递的browserslist
依赖项将被重复到根。请发布更多详细信息或示例配置实际上,所选的答案是可以的。只需删除Thread.lock。在我的情况下,我很难解决这个错误,因为我d就在发生此错误的当天安装了postsss preset env
。我以前从未使用过它。这很好。虽然KaiOS不在印度,但它是印度第二流行的操作系统(根据维基百科:)