# LoadableComponent

fun < T > LoadableComponent (preload: Optional < T >, loader: suspend LoadableComponentContext < T >.() -> T , block: LoadableComponentContext < T >.( T ) -> Unit )(source)
fun < T > LoadableComponent (preload: T , loader: suspend LoadableComponentContext < T >.() -> T , block: LoadableComponentContext < T >.( T ) -> Unit )(source)
fun < T > LoadableComponent (loader: suspend LoadableComponentContext < T >.() -> T , block: LoadableComponentContext < T >.( T ) -> Unit )(source)

Showing data with ability to reload data

block will be shown when loader will complete loading. If you want to reload data, just call LoadableComponentContext.reload