【发布时间】:2014-12-29 01:24:22
【问题描述】:
请参考@kriskowal 的优秀文章“A General Theory of Reactivity”。在其中,他使用 Q 约定给出了承诺队列的以下实现:
function PromiseQueue() {
var ends = Promise.defer();
this.put = function (value) {
var next = Promise.defer();
ends.resolve({
head: value,
tail: next.promise
});
ends.resolve = next.resolve;
};
this.get = function () {
var result = ends.promise.get("head");
ends.promise = ends.promise.get("tail");
return result;
};
}
您会看到它正在使用 Q 功能,例如 defer 和 get。我正试图围绕如何调整它以使用原生承诺,但我正在经历巨大的大脑冻结。 (在处理这个问题的过程中,我还发现 Chrome 似乎提供了一个Promise.defer 方法,AFAIK 不在规范中。)
有人可以帮忙吗?
【问题讨论】:
标签: promise q es6-promise