所以我有这段代码,createExampleDir
尚未实现,所以测试失败:
let chai = require('chai');
let expect = chai.expect;
let homeDir = require('home-dir');
let lib = require('../lib.js');
chai.use(require('chai-fs'));
let dir = homeDir('/example-dir');
describe('lib', () =>
describe('createExampleDir', () =>
it('should find ~/example-dir', () => lib.createExampleDir()
.then(() => expect(dir).to.be.a.directory())
.catch(() => {throw Error('Who cares!');})
)
)
);
问题是我遇到一个
UnhandledPromiseRejectionWarning
错误,错误为“谁在乎!”被抛出,因此捕获发生:(节点:30870)UnhandledPromiseRejectionWarning:未处理的承诺拒绝(拒绝ID:2):[object Object]
(节点:30870)[DEP0018] DeprecationWarning:已弃用未处理的承诺拒绝。将来,未处理的承诺拒绝将以非零退出代码终止Node.js进程。
如何避免
UnhandledPromiseRejectionWarning
警告? 最佳答案
在chai.use之后添加此代码
process.on('unhandledRejection', e => {
console.error(e);
});
并且您可以捕获错误和代码字符串号。
关于promise - 即使存在捕获,也会出现“UnhandledPromiseRejectionWarning”错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46738830/