Пример 1: Рекомпозиция триггеров
Код: Выделить всё
when (theme) {
ThemeOption1 -> MyComposable(content = content)
ThemeOption2 -> MyComposable(content = content)
}
Пример 2: не запускает рекомпозицию
Код: Выделить всё
when (theme) {
ThemeOption1,
ThemeOption2 -> MyComposable(content = content)
}
Вопрос:Почему Jetpack Compose не распознает, что обе ветви оператора if в первом примере приводят к одному и тому же компонуемому объекту и, таким образом, запускают рекомпозицию? Есть ли способ сделать Compose более умным в этом отношении или это конструктивное ограничение?
Дополнительный контекст:
Переменная темы — это состояние наблюдается при компоновке.
Содержимое MyComposable не меняется между различными вариантами темы.
Любые идеи или рекомендации по оптимизации этого сценария в Jetpack Compose будут очень признательны. Спасибо!
Подробнее здесь: https://stackoverflow.com/questions/785 ... lar-branch