首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Angular Browserslist: caniuse-lite已过时。请运行下一个命令` `npm update`

Angular Browserslist: caniuse-lite已过时。请运行下一个命令` `npm update`
EN

Stack Overflow用户
提问于 2019-12-17 02:39:38
回答 2查看 11.1K关注 0票数 14

我最近开始在我正在处理的一个Angular 8项目(node v10.16.0)中遇到这个错误。运行npm update caniuse-lite browserslist什么也不做

所以我删除了package-lock.json,删除了node_modules并运行了npm install,但是浏览器列表文件已经没有了。同样,当我运行ng build时,我得到相同的消息: Browserslist: caniuse-lite已过时。请运行下一个命令npm update

我在同一主题上看到了这篇文章:Browserslist: caniuse-lite is outdated. Please run next command npm update caniuse-lite browserslist,它谈到了WebCompiler和自动修复,而我对此一无所知。请指点

EN

回答 2

Stack Overflow用户

发布于 2020-01-07 17:48:42

通过运行以下命令解决了caniuse-lite过时的问题。

代码语言:javascript
复制
npm cache clean  # optional
npm install caniuse-lite@latest --save
票数 10
EN

Stack Overflow用户

发布于 2020-01-08 06:26:51

TLDR:(在没有解释的情况下可能看起来与直觉相反)

代码语言:javascript
复制
  npm install caniuse-lite browserslist
  npm uninstall caniuse-lite browserslist

解释:

此警告消息("canisuse-lite已过期,请....")如果发现安装的caniuse-lite版本比当前版本的2个版本旧,则在构建/启动期间由browserslist中的脚本输出。如果您的项目中没有任何更改,并且在启动或构建项目时突然看到此msg,则可能意味着有对caniuse-lite的最新版本更新。

不幸的是,只有在安装caniuse-lite作为项目的依赖项时,browserslist显示的文本msg才有用。很有可能,你没有。因此,当您运行建议的'npm update caniuse-lite‘或'npm update 'caniuse-lite@latest’(或'npm install')时,npm不会在您的package.json依赖项中看到该包,因此它会忽略该请求。

那么这些包是如何成为依赖关系的呢?当你的项目被创建时(可能是使用app angularapp或者create-react-app或者类似的框架),npm安装的浏览器列表是作为它所需要的工具的依赖项,而不是作为你的项目的依赖项。同时,安装了caniuse-lite作为browserslist的依赖项。稍后,当项目更新时,会创建一个package-lock.json文件,该文件将所有依赖项锁定到特定版本。

如果您能够更新package-lock.json中依赖项列表中的版本信息,那么运行'npm install‘将更新node_modules中的这些包。不能手动编辑package-lock.json。相反,最好的方法是:

  1. 临时使这些包成为项目的依赖项:npm install caniuse-lite browserslist

除了将包更新到最新版本之外,这还会更新caniuse中的依赖项列表,并且(最重要的是)将这些包作为项目的直接依赖项来卸载:npm package-lock.json.

  • Remove caniuse-lite browserslist

由于这些包由其他依赖项使用,因此不会从node_modules中删除它们。只有package.json会被更新,将它们作为一个项目dependency.

  • Commit包--package.json删除。其他任何人现在都可以运行'npm install‘,从package-lock.json的子依赖列表中获取更新后的两个包,并停止警告消息。
票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59362510

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档