目前具有简单的功能:
async function getItem(id) {
const item = await ... doing a bunch of time consuming stuff
return item;
}
来自同步语言,并且仍然从表面理解异步/等待;我希望以下内容返回已解决的项目:
const item = getItem('items-8');
console.log(item); // Just getting a promise
这个问题有点“美观”,但是async / await解决了回调问题,我希望能够进一步发展,甚至避免那些令人讨厌的东西。
是否可以使用async / awaits获得这样的单行变量赋值?什么是语法/代码结构?
qazxsw poi是ES6承诺的语法糖,它允许以类似同步的方式编写异步代码。使用promises的代码不能同步,因为promises是异步的。
为了以同步方式编写,使用async..await
的代码也应该驻留在getItem
函数中。如果它是顶级的并且不驻留在另一个函数中(如应用程序初始化代码),它可以驻留在async
IIFE中。
它也是
async
要么
getItem('items-8').then(item => {
...
});