" npm start"显示"未处理的承诺拒绝"错误

时间:2017-04-26 05:18:31

标签: node.js reactjs npm npm-start react-scripts

我是NodeJS和NPM的新手。

当我在NodeJS项目中运行npm start时,发生了以下错误:

Starting the development server...

(node:9417) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: Exited with code 3

这个错误是什么意思? 应如何调试此问题?

$ grep start package.json 
    "start": "react-scripts start",

$ npm -v
3.10.10
$ node -v
v6.10.1

$ npm ls react-scripts
reference-apps@2.3.1 /home/li/sample
└── react-scripts@0.5.1  

1 个答案:

答案 0 :(得分:1)

我想你的代码如下

new Promise(function(resolve, reject){
    reject(0)
}).then()

当您运行上面的代码时,您将获得“未处理的承诺拒绝”。

使用Promise / A +标准#point-21。承诺必须提供一种方法来访问其当前或最终的价值或理由。

你最好编写如下代码

promise.then(onFulfilled, onRejected)

另一种避免此问题的方法是,您可以使用流程

收听unhandledRejection事件
process.on('unhandledRejection', (reason, p) => {
  console.log('Unhandled Rejection at: Promise', p, 'reason:', reason);
  // application specific logging, throwing an error, or other logic here
});