1

我是 NodeJS 和 NPM 的新手。

当我npm start在 NodeJS 项目中运行时,出现以下错误:

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  
4

1 回答 1

1

我猜你的代码如下

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

当你运行上面的代码时,你会得到“Unhandled Promise Rejection”。

使用 Promise/A+ 标准#point-21。Promise 必须提供 then 方法来访问其当前或最终的值或原因。

你最好写如下代码

promise.then(onFulfilled, onRejected)

避免问题的另一种方法是,您可以unhandledRejection使用 process 监听事件

process.on('unhandledRejection', (reason, p) => {
  console.log('Unhandled Rejection at: Promise', p, 'reason:', reason);
  // application specific logging, throwing an error, or other logic here
});  
于 2017-04-26T07:10:31.633 回答