uni-app系列(七):uni-app编译报caniuse-lite is outdated的处理方案

1,310 阅读2分钟

📖摘要

心态好了,就没那么累了。心情好了,所见皆是明媚风景。

“一时解决不了的问题,那就利用这个契机,看清自己的局限性,对自己进行一场拨乱反正。”正如老话所说,一念放下,万般自在。如果你正被烦心事扰乱心神,不妨学会断舍离。断掉胡思乱想,社区垃圾情绪,离开负面能量。心态好了,就没那么累了。心情好了,所见皆是明媚风景。

今天分享下 —— uni-app 系列(七):uni-app 编译报 caniuse-lite is outdated 的处理方案 的一些基本知识,欢迎关注!

欢迎阅读,总结系列:野蛮生长的 uni-app 学习之路


🌂caniuse 库过期问题的原因

uni-app 的编译器是基于 npm 的,依赖了众多包括 mpvue、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,升级 HBuilderXcli

不要用半年前的 HBuilderX,或 cli ,持续保持升级。(目前 HBuilderX 正式版确实未及时更新导致过期,很快会发更新解决。另外 alpha 版是正常的)

解决方案2,在老版 HBuilderX 下手动升级 caniuse-litenpm

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

  • 项目是 HBuilderX 创建的
    • 打开 HBuilderX 的安装目录, HBuilderX/plugins/uniapp-cli 删除 node_modules 以及 package-lock.json
    • 在当前目录执行 npm install
  • 如果你的项目是 cli 创建的,请自行在 cli 环境下升级 npm在这里插入图片描述

最后感谢大家耐心观看完毕,原创不易,六个点赞收藏是您对我最大的鼓励!


🎉总结:

  • 更多参考精彩博文请看这里:《陈永佳的博客》

  • 喜欢博主的小伙伴可以加个关注、点个赞哦,持续更新嘿嘿!