无法运行react js项目

时间:2017-05-03 08:19:21

标签: json node.js reactjs npm

我使用react js进行项目构建 我想在本地执行它

到目前为止我做了什么:

1)安装了node.js(windows 64位)

2)从https://www.tutorialspoint.com/reactjs/reactjs_environment_setup.htm

开始直到第3步

现在我有了

1)c:// program files / nodejs / node_modules

2)Desktop / reactApp / node_modules

我将我的项目文件夹放在reactApp /中。所以package.json位于reactApp / package.json

现在当我尝试运行npm start

C:\Users\xxx\Desktop\reactApp>npm start

> liquid@0.1.0 start C:\Users\jitendra\Desktop\reactApp
> PORT=8080 react-scripts start

'PORT' is not recognized as an internal or external command,
operable program or batch file.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! liquid@0.1.0 start: `PORT=8080 react-scripts start`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the liquid@0.1.0 start script 'PORT=8080 react-scripts start'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the liquid package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     PORT=8080 react-scripts start
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs liquid
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls liquid
npm ERR! There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\jitendra\AppData\Roaming\npm-cache\_logs\2017-05-03T08_13_40_048Z-debug.log

这是我的 package.json 文件

{
  "name": "liquid",
  "version": "0.1.0",
  "private": true,
  "devDependencies": {},
  "dependencies": {
    "bootstrap": "^4.0.0-alpha.6",
    "chart.js": "^2.5.0",
    "google-map-react": "^0.23.0",
    "lodash": "^4.17.2",
    "moment": "^2.18.1",
    "prop-types": "^15.5.8",
    "react": "^15.5.4",
    "react-chartjs-2": "^2.0.5",
    "react-dom": "^15.5.4",
    "react-redux": "^5.0.1",
    "react-router": "^2.8.1",
    "react-router-redux": "^4.0.5",
    "react-scripts": "^0.9.5",
    "react-sortable-tree": "^0.1.17",
    "react-table": "^5.5.3",
    "reactstrap": "^4.3.0",
    "redux": "^3.6.0",
    "redux-logger": "^2.7.4",
    "redux-thunk": "^2.1.0",
    "whatwg-fetch": "^2.0.1"
  },
  "scripts": {
    "start": "PORT=8080 react-scripts start",
    "build": "react-scripts build && aws s3 sync build/ s3://xxx.co/1micro",
    "test": "react-scripts test --env=jsdom",
    "eject": "react-scripts eject"
  },
  "homepage": "http://xxx.co/1micro"
}

2 个答案:

答案 0 :(得分:3)

该PORT命令仅适用于Unix。尝试打开命令窗口并以windows方式设置端口变量,我认为(在powershell中):

$env:PORT=3005

或者,在正常的命令窗口中:

set PORT=3005

然后您可以通过运行检查工作:

echo %PORT%

应返回3005.然后,导航到您的reactApp目录并运行:

react-scripts start

答案 1 :(得分:3)

在项目根目录中创建一个.env文件,并在那里指定端口号PORT=3005 然后在包json启动脚本中使用这个"start": "react-scripts start"

下面的示例包json文件

{
  "name": "r",
  "version": "0.1.0",
  "private": true,
  "devDependencies": {
    "react-scripts": "0.8.4"
  },
  "dependencies": {
    "react": "^15.4.2",
    "react-dom": "^15.4.2"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test --env=jsdom",
    "eject": "react-scripts eject"
  }
}