ReactJS - 服务:语法错误:意外的标记 {

问题描述 投票:0回答:1

第一次尝试在生产中运行reactJS项目。我可能错过了一些愚蠢的事情。

在我的服务器上,

npm start
运行完美。现在我想在生产模式下运行它,所以我这样做了:

npm install -g serve
npm run build # correctly creates /build folder
serve -s build

现在我得到:

/usr/local/lib/node_modules/serve/build/main.js:4
import { cwd as getPwd, exit, env as env2, stdout } from "node:process";
       ^

SyntaxError: Unexpected token {
    at Module._compile (internal/modules/cjs/loader.js:723:23)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    at Function.Module.runMain (internal/modules/cjs/loader.js:831:12)
    at startup (internal/bootstrap/node.js:283:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)

我错过了什么?

我已经尝试过的:

  • 我的nodeJS服务器在端口3001上运行,所以我也尝试运行

    serve -s build -l 3001
    ,但它会导致相同的错误消息

  • 有人说不要全局安装服务,而是运行

    npm -S serve
    - 不起作用

  • npx serve {...}
    也不起作用(仅打印
    Unexpected token {

reactjs node.js
1个回答
0
投票

您使用的是非常旧的 Node 版本,它不支持

serve
所需的功能。

当前版本的

serve
(14) 在其文档中声明如下:

serve
v14 及以上版本需要 Node v14 才能运行。如果无法升级到 Node v14,请使用
serve
v13。

您需要升级到较新版本的 Node,最好是当前的长期支持版本 Node 20。

如果这不是一个选项,您可以尝试运行早期版本的

serve
,例如版本 13:

npx serve@13 -s build
© www.soinside.com 2019 - 2024. All rights reserved.