对于同步代码我做:
return opts || (opts = getOpts())
确保容易缓存/初始化内容。
在异步/承诺模式中最容易做到的是什么? 目前我有一个重复的样板
if (result) {
return Promise.resolve(result);
} else {
return getResult().then(_result => {
result = _result;
return result;
}
}
多次完成时哪个很烦人。 我找到的库要么没有维护,要么提供不友好的语法。
有什么建议或想法吗?
您可以使用像这样的await关键字来实现更友好的语法
if (!result) result = await getResult();
return result;