我什么时候应该使用 Q.defer 什么时候只使用 Promise.resolve/reject?
When should I use Q.defer and when just Promise.resolve/reject?
我正在使用 nodejs,想知道什么时候应该使用 Q defer,什么时候只使用 Promise。resolve/reject?
我看了很多这两种的例子,例如:
// with Q defer
fucntion oneWay(myVal) {
var deffered = Q.defer();
if (myVal < 0) {
deffered.reject(new Error('nope'));
} else {
deffered.resolve('yay');
}
return deffered.promise;
}
// native Promise
fucntion orAnother(myVal) {
if (myVal < 0) {
return Promise.reject(new Error('nope'));
} else {
return Promise.resolve('yay');
}
}
有什么区别,什么时候使用 difer 比较好?
Promise.resolve/reject(native)和Q.resolve/reject有区别吗?他们都 return 承诺但是当我在节点控制台中查看 return 值时它看起来不同。
谢谢
没有理由在不需要时使用 Promise
constructor, or - - 延迟。您的函数中没有任何异步内容,因此您不需要(也不应该使用)回调。
只需寻找 Promise.resolve
/Promise.reject
或他们的 Q
对应物并直接构造一个值的承诺。无论如何,它更短更简单。
另见 。
When is a good practice to use defer?
从来没有。即使在 Q
中,您也应该使用 Q.Promise
.
Is there any difference between Promise (native) and Q? They look different when I look at the return value in node console.
好吧,它们是不同的 类,具有不同的属性,并且 Q
promises 确实有更多的方法。
尽管它们的工作方式相同,并且彼此之间完全可以互操作。
我正在使用 nodejs,想知道什么时候应该使用 Q defer,什么时候只使用 Promise。resolve/reject?
我看了很多这两种的例子,例如:
// with Q defer
fucntion oneWay(myVal) {
var deffered = Q.defer();
if (myVal < 0) {
deffered.reject(new Error('nope'));
} else {
deffered.resolve('yay');
}
return deffered.promise;
}
// native Promise
fucntion orAnother(myVal) {
if (myVal < 0) {
return Promise.reject(new Error('nope'));
} else {
return Promise.resolve('yay');
}
}
有什么区别,什么时候使用 difer 比较好?
Promise.resolve/reject(native)和Q.resolve/reject有区别吗?他们都 return 承诺但是当我在节点控制台中查看 return 值时它看起来不同。
谢谢
没有理由在不需要时使用 Promise
constructor, or -
只需寻找 Promise.resolve
/Promise.reject
或他们的 Q
对应物并直接构造一个值的承诺。无论如何,它更短更简单。
另见
When is a good practice to use defer?
从来没有。即使在 Q
中,您也应该使用 Q.Promise
.
Is there any difference between Promise (native) and Q? They look different when I look at the return value in node console.
好吧,它们是不同的 类,具有不同的属性,并且 Q
promises 确实有更多的方法。
尽管它们的工作方式相同,并且彼此之间完全可以互操作。