如何最终兑现承诺?
我可以添加一个与之等效的东西吗?
functionReturningPromise()
.then(success => {})
.catch(error => {})
还是我应该这样做(甚至可以按预期工作)?
functionReturningPromise()
.then(success => {},error => {}).then(() => { /* finally code */ })
答案 0 :(得分:1)
您可以使用
.finally()
示例:
functionReturningPromise()
.then(data=>console.log(data))
.catch(error=>console.log(error))
.finally(()=>console.log("FINISH"))
最后被称为总是
答案 1 :(得分:0)
您可以通过两种方式执行此操作:
yourPromiseFunction
.then(function(json) { /* process your JSON further */ })
.catch(function(error) { console.log(error); /* this line can also throw, e.g. when console = {} */ })
.finally(function() { console.log("finally") });
示例:
yourPromiseFunction.then(() => console.log('Resolved'))
.catch(() => console.log('Failed'))
.then(() => console.log('This is your finally'));
答案 2 :(得分:0)
是的,终于可以兑现承诺了。
示例:
internal/modules/cjs/loader.js:613
throw err;
^
Error: Cannot find module 'sdk-conf'
有关更多参考,请参见https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/finally