JS 中 Async 的一个线性结果?

One liner result of Async in JS?

我想将异步 IIFE 函数的结果分配给一个对象 属性。

类似于:

const myObj = {
    dep: (async () => { await import('./myDep'); return myDep;})(),
}

但我没有得到价值,而是得到了承诺。

目前我必须使用这个丑陋的东西:

let myObj = {};

(async () => {
    await import('./myDep');
    return myDep;
    })().then((myDep) => {                                                            
        myObj = {
            dep: myDep
        }
    }
});

对于顶级异步,它仍处于 ECMAScript 提案状态,我相信这很简单:

const myObj = {
    dep: await import('./myDep'),
}

感谢@JonasWilms

最后我这样做了:

const myObj = {};

import("./myDep").then(m => myObj.myattrib = m.namedexport);

这按预期工作,我将 myObjmyattrib 属性作为 myDep.

的命名导出