繁体   English   中英

无法开始新的 Expo 项目 | 不再支持 Node.js 版本 14.0.0

[英]Unable to get started with a new Expo project | Node.js version 14.0.0 is no longer supported

我刚刚开始使用 Expo 并尝试创建我的第一个项目。 我通过Homebrew安装了 Node.js (v14.0.0),并通过运行 Expo快速入门指南中提到的以下命令,使用npm安装了已安装expo-cli

# Install the command line tools
npm install --global expo-cli

# Create a new project
expo init my-project

但是,我在运行expo init my-project命令时收到如下错误:

错误:不再支持 Node.js 版本 14.0.0。

expo-cli 支持以下 Node.js 版本:

  • >=10.13.0 <11.0.0(活跃的 LTS)

  • >=12.0.0 <13.0.0(活跃的 LTS)

  • >=13.0.0 <14.0.0(当前版本)

我尝试运行expoexpo-cliexpo diagnostics ,但每次都收到相同的错误消息。 我几乎无法运行expo命令

我检查了 Node.js发行说明,发现 Node.js 最近升级到了 14.x 版。

熟悉 Expo 开发和发布时间表的人可以帮助解决以下两种推荐方法吗?

  1. 降级到较旧的稳定版和 Expo 支持的 Node.js 版本。

  2. 等待 Expo 的更新(仅当 Expo 的更新即将发布时)。

我使用的 Mac 运行当前最新公开发布的 macOS Catalina 版本 10.15.4 (19E287)。

最好的解决方案是使用brew降级到expo-cli支持的node版本。
只需运行以下命令:

brew unlink node
brew install ${MAX_ALT_NODE=$(brew search node | grep node@ | sort -rn | head -n 1)}
brew link --overwrite --force $MAX_ALT_NODE

你完成了! expo-cli重回正轨!


解释:

#unlink current node version so we can install another version
brew unlink node
#install the highest alternative node version available with `brew`
brew install ${MAX_ALT_NODE=$(brew search node | grep node@ | sort -rn | head -n 1)}
#force link this version to use it instead of default node version
brew link --overwrite --force $MAX_ALT_NODE

笔记:

  • 由于这些命令获得了动态安装的brew可用的最高替代node版本,因此它将来也可以使用。
  • 解决当前问题的拉取请求已合并到官方expo-cli库中,因此应该很快可用。

工作@ 2020年5月

$ brew uninstall node  --ignore-dependencies node
$ brew install node@12
$ brew link --force --overwrite node@12

您应该使用 Node 12.js 版本。 Expo 需要一些时间来支持新版本的 Node。 所以最好的办法是将您的节点降级到当前支持的版本 12。 我最近在向后兼容性方面遇到了类似的问题。 看到这些评论。 堆栈溢出

今天同样的问题,我正在使用 nvm 并且选择的节点版本是 v13.7.0。 解决方案是将 expo-cli 升级到最新版本 (expo-cli@3.20.9)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM