Лучший способ извлечения логики ViewModel в отдельный файлAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Лучший способ извлечения логики ViewModel в отдельный файл

Сообщение Anonymous »

Если у вас есть код в вашем ViewModel, который должен проверить Stateflow ViewModel, а также нужно обновить его, и вы хотите извлечь этот код в отдельный класс, потому что это уже слишком много кода, каким будет самый чистый текущий подход? Поскольку не рекомендуется разоблачение MutableStateFlow, поэтому не следует делать нельзя выполнить потоки Stateflows в новый класс, так как справиться с этим? < /P>
// File: MyViewModel.kt
package com.example.viewmodel

import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.asStateFlow

@HiltViewModel
class MyViewModel : ViewModel() {
private val _state = MutableStateFlow(STATE.INITIAL)
val state = _state.asStateFlow()

// TODO: How to extract this into separate file/class/object
fun doSomething() {
if(state == STATE.INITIAL) {
startConnection() {
// on error:
_state.value = STATE.ERROR
}
_state.value = STATE.CONNECTING
}
}
}


Подробнее здесь: https://stackoverflow.com/questions/794 ... arate-file
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»