`npm install @babel/cli` 对四个模块显示“WARN deprecated”。我该如何解决这些弃用问题?

srW*_*Dev 4 npm babel-cli

我的设置

  • MacOS = Catalina 10.15.4(最新版本)
  • nvm = 0.35.3(最新版本)
  • node.js = 12.16.3(最新 LTS 版本)。安装在 nvm 目录内。
  • npm = 6.14.4(最新版本)。安装在 nvm 目录内。

注意:. 内部没有全局安装usr/local

我的问题

我用来npm init -y创建我的 package.json。这里没有问题。

我用npm install --save-dev @babel/core。这里没有问题。我得到的版本是 7.9.6。

然后当我使用时npm install --save-dev @babel/cli我会回来:

npm WARN deprecated chokidar@2.1.8: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.

npm WARN deprecated fsevents@1.2.13: fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.

npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated

npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated

@babel/cli 版本是 7.8.4。

我尝试解决这个问题

npm install chokidar@3给了我完全相同的警告。

npm install chokidar接下来npm install --save-dev @babel/cli给了我完全相同的警告。

npm upgrade chokidar绝对没有给我任何东西。终端只是开始一个新行。

我已经安装了 xcode 的命令行工具(版本 11.4.1 - 最新的非测试版),但问题仍然存在。

我卸载了node.js和npm,然后使用nvm重新安装。问题仍然存在。

我尝试阅读 www.babeljs.io 上的安装指南和文档,但很多信息似乎已经过时和/或相互矛盾。我找不到任何可能讨论该问题的 YouTube 视频,因为它们也已过时。stackoverflow.com 上所有与此问题稍微相关的帖子也已过时。我最大的问题是试图找到不过时的信息。

我很困惑。我正在努力思考下一步该朝哪个方向尝试并找出如何修复这些弃用警告。

任何帮助将非常感激。

Pan*_*cho 5

从 7.10.3 开始,Babel 需要已弃用的 chokidar 来为 Node 6 提供向后兼容性。

据我了解,Babel 8 将放弃对 Node 6 的支持。有关此主题的更多信息,请参阅以下 2 个 babel 问题: Babel 问题 9981Babel 问题 10684

关于urix和resolve-url,Babel源代码树引用了source-map-resolve@0.5.3,而后者又引用了已弃用的urix和resolve-url。

如您帖子中的警告消息所示,链接resolve-urlurix解释说“解决方案是将您的依赖项链更新到source-map-resolve版本0.6.0或更高版本,或者切换到不使用source-的依赖项根本没有地图解析。” 然而,你是否愿意碰巧弄乱 Babel 依赖树则是另一回事了。

然而,已弃用并不意味着已损坏,并且由于您使用的是 Node 12.16.3,并且警告状态仅来自 Node 14+,因此我的期望是它们仍应在您的场景中按预期执行。