javascript - 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);
这按预期工作,我myObj
将myattrib
属性作为myDep
.
推荐阅读
- python - 我可以使用 python 的 np.savez 来保存列表列表吗?
- c# - 将新项目添加到 ObservableCollection 时,UI 仅更新一次
- monitoring - 如何在将 Telegraf 中的指标发送到 Datadog 之前对其进行过滤?
- xamarin.forms - 如何在 CollectionView 中绑定 Picker?
- python-3.x - 向 flask-restplus 发送多个参数
- python - 您如何像 Mathematica 那样执行这种不正确的积分?
- c# - 将 JSON 反序列化为 C# 对象列表
- android - Google App Store:如何测试订阅?
- ruby-on-rails - 渲染静态页面时 Rails 路由冲突
- python - 为什么 [None] * 10 比 [None for i in range(10)] 快