Код: Выделить всё
@Composable
fun MyParentLayout() {
val viewModel = hiltViewModel()
MyParentImpl(viewModel.someValue)
}
@Composable
fun MyParentImpl(someValue:Int) {
//A lot of displayed data
MySubLayout()
//A lot more data
}
@Composable
fun MySubLayout() {
val viewModel = hiltViewModel()
//display code
}
У меня есть работа, в которой мы устанавливаем локальное значение композиции в тесте, и код ищет это переопределение и использует значения по умолчанию вместо выборки модели представления. Но это кажется немного неприятным, к тому же мы на самом деле не тестируем код, который у нас есть в производстве. Я также мог бы вызвать вызов, чтобы получить уровень модели представления 1 и передать соответствующие биты состояния, но это становится обременительным, когда он проходит через несколько уровней, как это происходит в некоторых случаях. Есть ли лучший способ справиться с этим?
Подробнее здесь: https://stackoverflow.com/questions/798 ... dependency
Мобильная версия