Javascript 为什么我不能在ec2上创建react应用程序?

Javascript 为什么我不能在ec2上创建react应用程序?,javascript,node.js,reactjs,amazon-web-services,amazon-ec2,Javascript,Node.js,Reactjs,Amazon Web Services,Amazon Ec2,我已经在本地机器上玩了一会儿create react app。我还创建了一个基本的express应用程序,我正在ec2实例上运行该应用程序,因此我想将基于create react app的项目推到ec2上,并为构建服务。感兴趣的两个命令是npm run start和npm run build 不幸的是,在ec2上运行npm start(我相信命令实际上不需要“run”),我会遇到大量错误 [ec2-user@ip-172-31-62-133 ab-site-2017-summer]$ npm s

我已经在本地机器上玩了一会儿
create react app
。我还创建了一个基本的
express
应用程序,我正在
ec2
实例上运行该应用程序,因此我想将基于
create react app
的项目推到
ec2
上,并为构建服务。感兴趣的两个命令是
npm run start
npm run build

不幸的是,在ec2上运行
npm start
(我相信命令实际上不需要“run”),我会遇到大量错误

[ec2-user@ip-172-31-62-133 ab-site-2017-summer]$ npm start

> ab-site@0.1.0 start /home/ec2-user/ab-site-2017-summer
> react-scripts start

/home/ec2-user/ab-site-2017-summer/node_modules/react-scripts/scripts/start.js:33
const {
      ^

SyntaxError: Unexpected token {
    at exports.runInThisContext (vm.js:53:16)
    at Module._compile (module.js:373:25)
    at Object.Module._extensions..js (module.js:416:10)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Function.Module.runMain (module.js:441:10)
    at startup (node.js:139:18)
    at node.js:968:3
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! ab-site@0.1.0 start: `react-scripts start`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the ab-site@0.1.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/ec2-user/.npm/_logs/2017-06-26T03_51_22_790Z-debug.log
注意:当
npm在
ec2
上为这个项目安装
node\u模块时,我确实注意到了一些问题。对于我的基本方法是否正确,我也不是100%(作为非web开发人员)。我的目标是使用
npm build
构建
dist
资产,然后指向我的
express
应用程序,为我的域的索引路由提供
index.html
文件。我的前端,通过react路由器
应该处理所有的用户界面和前端路由 ,您需要在EC2实例上安装节点>=6,以便构建和运行应用程序(海报使用的是节点4.4.5)


您看到的错误是Node 4不知道如何处理ES6解构语法,直到Node 6.4.0(请参阅)才引入ES6解构语法。

您正在运行哪个版本的npm/Node?看起来它在抱怨ES6的解构语法…问题是CreateReact应用程序应该通过使用babel和webpack来抽象这些语法
node-v4.4.5
npm-V5.0.3
Yes,create react应用程序为开发者抽象了这些工具的配置,但环境仍然需要支持它。如果您看一下,ES6的解构功能直到6.4.0才受支持,您需要升级运行在EC2实例上的节点