有个config需要从api读取,打算把Config设计成Singleton。

1
2
3
4
5
6
7
8
final class Conig {
static let sharedInstance = Config()
private init() {
}
}

由于api异步读取,我们需要在渲染页面之前就能够使用Config,这就需要类似eager load的功能。很遗憾swift3没有对eager load的支持,这个singleton只能在第一次被调用的时候初始化。解决方法是在渲染之前的一些hook里面引用一下这个singleton。