直截了当的功能记忆就够了吗?
function foo() { return new Promise((resolve,reject) => { doSomethingAsync({ success: resolve,fail: reject }); }); };
这样就够了吗?
var fooMemoized = memoize(foo);
注意:此问题已更新,以删除延迟反模式.
如果您的诺言库确实支持某种取消,您可能只想确保备忘的承诺是无法撤销的.另请注意,这种形式的记忆也会记住拒绝,因此您无法通过“再次尝试”来从错误中恢复.