s*****w 发帖数: 1527 | 1 比如这个例子,肯定没办法在then里面接受 Done ?
new Promise(function(resolve, reject) {
// A mock async action using setTimeout
setTimeout(function() { reject('Done!'); }, 3000);
})
.then(function(e) { console.log('done', e); })
.catch(function(e) { console.log('catch: ', e); });
// From the console:
// 'catch: Done!' |
Y**G 发帖数: 1089 | |
s*****w 发帖数: 1527 | 3 太好了,明天试下。谢谢!
【在 Y**G 的大作中提到】 : then后面可以更两个函数作为参数,第二个是可以抓住reject : https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_ : Objects/Promise/then
|
c*********e 发帖数: 16335 | 4 知道什么是callback吗?
【在 s*****w 的大作中提到】 : 比如这个例子,肯定没办法在then里面接受 Done ? : new Promise(function(resolve, reject) { : // A mock async action using setTimeout : setTimeout(function() { reject('Done!'); }, 3000); : }) : .then(function(e) { console.log('done', e); }) : .catch(function(e) { console.log('catch: ', e); }); : // From the console: : // 'catch: Done!'
|
s*****w 发帖数: 1527 | 5 大牛,我的问题是这样,
promise return success or reject,
但接受的那方还要处理第3种情况:unhandled exception
所以想知道有啥最佳办法。
【在 c*********e 的大作中提到】 : 知道什么是callback吗?
|
c*********e 发帖数: 16335 | 6 reject和exception是两码事。你概念不清。
【在 s*****w 的大作中提到】 : 大牛,我的问题是这样, : promise return success or reject, : 但接受的那方还要处理第3种情况:unhandled exception : 所以想知道有啥最佳办法。
|
s*****w 发帖数: 1527 | 7 我是搞混了,async好像没有 try catch,
问题是resolve, reject只返回2种情况,我现在需要返回3种。
【在 c*********e 的大作中提到】 : reject和exception是两码事。你概念不清。
|
s*i 发帖数: 5025 | 8 promise只有两种。如果你要三种情况,可以resolve 一个value,这个value可以有多
少情况都行
: 我是搞混了,async好像没有 try catch,
: 问题是resolve, reject只返回2种情况,我现在需要返回3种。
【在 s*****w 的大作中提到】 : 我是搞混了,async好像没有 try catch, : 问题是resolve, reject只返回2种情况,我现在需要返回3种。
|
s*****w 发帖数: 1527 | 9 谢谢大牛!
【在 s*i 的大作中提到】 : promise只有两种。如果你要三种情况,可以resolve 一个value,这个value可以有多 : 少情况都行 : : : 我是搞混了,async好像没有 try catch, : : 问题是resolve, reject只返回2种情况,我现在需要返回3种。 :
|
h**********c 发帖数: 4120 | 10 exception从操作系统讲要处理异常信号,比如timer到时间,root kill -9 u
reject resolve怎么考虑这些问题,看看大牛怎么来打圆场
【在 s*****w 的大作中提到】 : 比如这个例子,肯定没办法在then里面接受 Done ? : new Promise(function(resolve, reject) { : // A mock async action using setTimeout : setTimeout(function() { reject('Done!'); }, 3000); : }) : .then(function(e) { console.log('done', e); }) : .catch(function(e) { console.log('catch: ', e); }); : // From the console: : // 'catch: Done!'
|