Sobes.tech
Junior — Middle

Kako je implementirana funkcionalnost anotacije @Restartable u Jetpack Compose i koja je njena svrha?

sobes.tech АИ

Одговор од АИ

Napomena @Restartable u Jetpack Compose se koristi za kreiranje efekata koji se automatski restartuju kada se ključni parametri promene. Ovo pojednostavljuje upravljanje životnim ciklusom efekata, poput korutina ili pretplata, koje treba da se osveže kada se ulazni podaci promene.

Svrha:

  • Omogućava pokretanje i otkazivanje sporednih efekata pri promeni zavisnosti.
  • Obezbeđuje automatski restart efekta bez potrebe za ručnim praćenjem promena.

Primer upotrebe:

@Composable
fun MyComposable(userId: String) {
    @Restartable
    fun loadUserData() {
        // Pokreće se pri svakoj promeni userId
        LaunchedEffect(userId) {
            val data = repository.getUserData(userId)
            // ažuriranje stanja
        }
    }

    loadUserData()
}

U ovom primeru, kada se userId promeni, efekat učitavanja podataka automatski će se restartovati, što pojednostavljuje kod i čini ga deklarativnijim.