我正在学习如何使用scientist。总体而言,它似乎工作正常,但我无法使用错误处理功能。示例:
const Scientist = require('scientist');
const scientist = new Scientist();
scientist.on('error', error => {
console.log('Error during experiment:');
console.log(error);
});
const science = scientist.science.bind(scientist);
const calculateSum = (a, b) => {
return science('sum', experiment => {
experiment.use(() => a + b);
experiment.try(() => { throw new Error('oops') });
});
};
calculateSum(1, 1);
如果运行此命令,则可以在控制台上看到2
,与预期的一样,但没有其他显示。我希望看到Error during experiment:
,但不会。 为什么错误处理程序无法运行?这是科学家的错误,还是我做错了什么?我正在macOS 10.13.6上使用科学家v1.1.1和Node v8.11.1。
我能够运行scientist.on('result')
处理程序(在我的示例中未显示)。