reactjs 在nextjs应用程序中升级react时出现意外令牌错误

ulydmbyx  于 2023-01-30  发布在  React
关注(0)|答案(2)|浏览(117)

我想在nextjs应用程序中升级到React 18。我按照官方文档中的说明操作。
npm install next@latest react@latest react-dom@latest
但是当我尝试运行npm run build时,我得到了错误:

/node_modules/next/dist/build/index.js:329
                    ...pageKeys.app ?? [],
                                     ^

SyntaxError: Unexpected token '?'
    at wrapSafe (internal/modules/cjs/loader.js:915:16)
    at Module._compile (internal/modules/cjs/loader.js:963:27)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
    at Module.load (internal/modules/cjs/loader.js:863:32)

我试着谷歌这个错误,但没有运气

68bkxrlz

68bkxrlz1#

当前的next.js(13.0.0)需要节点14.6.0或更高版本:

系统要求
  • Node.js 14.6.0或更高版本
  • 支持MacOS、Windows(包括WSL)和Linux

您看到的错误是因为某些next.js代码使用了nullish coalescing operator,这个语言构造是在节点14.0.0中引入的。

5n0oy7gb

5n0oy7gb2#

按照acdcjunior的回答,如果任何人希望终端命令更新节点版本,他们可以这样做:

nvm install v (Whatever latest stable version is running currently)

如果以上有任何问题,请尝试以下操作:

npm install n stable -g

如果遇到权限问题,请执行以下操作:

sudo su
npm install n stable -g

为了确保万无一失,您可以这样做:

npm use v(Whatever you downloaded)

相关问题