LaunchEffect允许我们在Composable中使用协程

1
2
3
4
@Composable fun DisposableEffect(
vararg keys: Any?,
effect: DisposableEffectScope.() -> DisposableEffectResult
): Unit
  • 像DisposableEffect一样,当Composable进入composition时执行block
  • 当Composable从树上detach时,CoroutineScope执行cancel
  • 参数keys发生变化是,会执行cancel后再次执行effect
    简而言之,就是支持执行Coroutine的DisposableEffect,会自动执行cancel,不需要手动onDispose