什么是好的javascript异步初始化/缓存模式?

时间:2018-11-29 18:59:05

标签: caching promise

对于同步代码,我要做:

 return opts || (opts = getOpts())

为确保事物易于缓存/初始化。

在异步/承诺模式下最简单的方法是什么?
目前我有一个重复的样板

if (result) {
   return Promise.resolve(result);
} else {
   return getResult().then(_result => {
       result = _result;
       return result;
   }
}

多次完成后会很烦人。
我发现的库要么没有维护,要么提供了不友好的语法。

有什么建议或想法吗?

1 个答案:

答案 0 :(得分:1)

使用这样的await关键字可以实现更友好的语法

@Suppress("REIFIED_TYPE_PARAMETER_NO_INLINE")
public fun <reified T : Any> ArrayList<*>.isArrayListOf(): Boolean =
    T::class.java.isAssignableFrom(this::class.java.componentType)