DCloud_heavensoft
DCloud_heavensoft
  • 发布:2019-01-20 09:35
  • 更新:2024-11-27 11:34
  • 阅读:57039

uni-app编译报caniuse-lite is outdated的处理方案

分类:uni-app

caniuse库过期问题的原因

uni-app的编译器是基于npm的,依赖了众多包括webpack在内的npm库,这些库又引用了一个三方库caniuser-lite。
caniuser-lite这个库的代码里有个浏览器兼容数据的更新检查,过老的数据影响自动补齐css前缀。
开发者平时写uni-app时并不需要手动补浏览器的css前缀,就是因为这个库在自动补前缀。
这个库它自己每半年过期一次,过期后会报错如下:

Browserslist: caniuse-lite is outdated. Please run next command `npm update caniuse-lite browserslist`

这个报警不影响编译成功,只是告警提示

对于熟悉npm的开发者,这个报警不足为奇,按命令提示更新即可。
但HBuilderX的很多开发者不熟悉npm,遇到问题可能就不知该怎么办了。
目前可用的解决方案如下几种:

解决方案1,升级HBuilderX或cli

不要用半年前的HBuilderX,或cli,持续保持升级。(HBuilderX2.8.11之前的版本存在过期问题,升级到2.8.11即可)

解决方案2,在老版HBuilderX下手动升级caniuse-lite的npm库

如果不想升级HBuilderX ,也可在老版下解决问题。

  • 项目是HBuilderX创建的
    1. 打开HBuilderX的安装目录, HBuilderX/plugins/uniapp-cli
    2. 删除node_modules以及package-lock.json
    3. 在当前目录执行npm install

  • 如果你的项目是cli创建的,请自行在cli环境下升级npm包
8 关注 分享
sonicsunsky Trust 1***@qq.com 1***@qq.com un 9***@qq.com 2***@qq.com 1***@qq.com

要回复文章请先登录注册

y***@163.com

y***@163.com

v2.7.9 参考方案2 解决
2020-09-07 09:59
过时的流行

过时的流行

解决方案2
在HBuilderX/plugins/uniapp-cli 目录运行 npx browserslist@latest --update-db 即可解决问题
2020-09-07 09:15
l***@126.com

l***@126.com

参考方案2解决
2020-09-07 09:11
chualosue

chualosue

2.8.8.20200820使用方法2 可以了
2020-09-07 09:10
雨悸

雨悸

回复 DCloud_heavensoft :
2.8.8.20200820 不行呢
2020-09-07 08:59
巅峰网络

巅峰网络

回复 DCloud_heavensoft :
2.8.8.20200820 不行
2020-09-07 08:52
MiCloud

MiCloud

参考方案2 成功处理了
2020-09-07 08:39
DCloud_heavensoft

DCloud_heavensoft (作者)

回复 雨悸 :
最新的版本是alpha版,是正常的
2020-09-06 23:48
雨悸

雨悸

升级了最新的HbuildX 还是报错啊Browserslist: caniuse-lite is outdated. Please run:
21:45:44.789 npx browserslist@latest --update-db
2020-09-06 21:50
巅峰网络

巅峰网络

回复 DCloud_UNI_FXY :
不行啊
2020-09-06 21:12