【发布时间】:2017-11-13 05:33:16
【问题描述】:
我正在努力兑现承诺。我通过.then().then().then().then().then().then().then().then().then().then().then().then() 看到事件链是如何发生的,但我不知道如何让它结束。我希望我能做一个简单的:
.then(callback(mydata))
但是,我无法让它工作。我正在努力做到这一点。
function doSomethingCallback(theArrayComesBackHere) {
theArrayComesBackHere.forEach(/*do stuff*/);
}
button.onclick = () => {
myobj.getlocalforagedata(doSomethingCallback);
}
myobj = {
getlocalforagedata: (callback) => {
var arr = [];
localForage.keys().then((keys) => {
keys.forEach((key) => {
localForage.getItem(key).then(function (results) {
arr.push(results);
});
});
callback && callback(arr);
});
}
}
请帮助我摆脱这种疯狂。
【问题讨论】:
-
不清楚,你想在你的函数中得到一个承诺,对吧?
-
我想要的是让这个承诺返回一个对象。 (老实说,我希望不涉及承诺。我从不使用它们,因为我似乎无法掌握它们。但是,我正在使用 localForage 并且它使用它们。我想让 localForage 做这件事,我构建了一个要返回的对象)---希望有所帮助
-
一个对象用于所有功能?
-
是的,只有一个对象来自 localForage 的承诺。
-
localForage.getItem(key).then..-LocalStorage.get不返回Promise。
标签: javascript promise localforage