Я настраиваю проект Android, где я разделял код на разные модули, чтобы иметь немного более чистой структуры. Модули представляют собой представление, домен, данные, DI и приложение. Я включаю диаграмму зависимостей между ними.
Когда я пишу новый экран, использующий композицию в Learer Layer, Im, в том числе AM, в том числе. Конечно, эти экраны нуждаются в ViewModel, и, поскольку предварительные просмотры не запускают приложение, Koin не работает для этого. Таким образом, предварительный просмотр не может надуть. Это выглядит примерно так: < /p>
@Preview
@Composable
fun ConnectAccountScreenPreview() {
KoinApplicationPreview(application = { modules(onboardingModule) }) {
ConnectAccountScreen(onNavigateBack = {}, onNavigateToNext = {})
}
}
< /code>
Проблема, с которой у меня есть, заключается в том, что я не могу создать полностью поддельный модуль на уровне презентации, потому что он не может видеть слой данных, поэтому реализация репозиториев и наборов данных недоступна. Это, потому что это создаст круговую зависимость. < /p>
Какой самый чистый способ решить это? Моя модульная настройка просто отстой? Должен ли я избавиться от предварительных просмотров? Могу ли я включить поддельный модуль или зависимость, о которой я не думаю? Если вам нужен какой -либо дальнейший код, просто дайте мне знать. Спасибо!
Подробнее здесь: https://stackoverflow.com/questions/797 ... e-previews