electrolobzik
01/02/2024, 8:59 PMArkadii Ivanov
01/02/2024, 9:05 PMelectrolobzik
01/03/2024, 10:25 AMclass DefaultEnterPhoneComponent(
private val sendCode: (String) -> Unit,
private val onBack: () -> Unit,
) : EnterPhoneComponent {
override fun sendCodeClicked(phoneNumber: String) {
sendCode(phoneNumber)
}
override fun onBackClicked() {
onBack()
}
}
It doesn’t do any useful work, from my point of view. So my question is if it is a good solution if I remove this EnterPhoneComponent and will bind SignInRootComponent directly to screens A and B.Arkadii Ivanov
01/03/2024, 10:45 AMArkadii Ivanov
01/03/2024, 10:49 AMIt doesn’t do any useful workI would store the state in the component itself. E.g. something like this.
interface EnterPhoneComponent {
val model: Value<Model>
fun onPhoneChanged(phone: String)
fun onSendCodeClicked()
fun onCloseClicked()
data class Model(
val phone: String,
)
}
electrolobzik
01/03/2024, 10:52 AMelectrolobzik
01/03/2024, 10:52 AMelectrolobzik
01/03/2024, 10:54 AMArkadii Ivanov
01/03/2024, 10:54 AMArkadii Ivanov
01/03/2024, 10:55 AMArkadii Ivanov
01/03/2024, 10:55 AMelectrolobzik
01/03/2024, 10:56 AMArkadii Ivanov
01/03/2024, 11:00 AMMutableValue
if I need SwiftUI, or `StateFlow`/`BehaviorObservable` if I don't need SwiftUI.electrolobzik
01/03/2024, 11:01 AM