А можно подробнее про твой случай?

21 ответов

9 просмотров

Вьюха Получает на вход какие варианты (типа список элементов, даты, все в обьекте input) На выход по клику кнопки дергает callback Все верианты что получает вьюха на вход можно менять и они соответственно сразу должны отображаться Со всеми пунктами работало нормально и без remember (менял напрямую в input) Но вот другая кастомная вьюха не захотела пересоздаватся таким образом И мне пришлось вынести даты в remember Я вот щас писал и понимаю что что то тут не так...

А можно засунуть весь input в mutableStateOf ? Или так и нужно?

Silent829
А зачем что-то менять внутри вьюхи?

Что б менялось отображение И по нажатию кнопки вернуть результат целиком

Pavel Kravchenko
Что б менялось отображение И по нажатию кнопки вер...

так тебе внутрь вьюхи необязательно и не нужно ничего менять, это делается извне (как описывали ранее с помощью state hosting). И результат возвращать целиком тоже

Pavel Kravchenko
Есть пример?

камон, обычный @Composable + ViewModel или подобные, это чтобы не было десяток параметров на чтение и калбэков, можно состояния обернуть в дата класс, но с калбэками не решится дело. Можешь описать задачу хорошо?

Silent829
камон, обычный @Composable + ViewModel или подобны...

Экран использует ViewModel и state в data класе Кастомная вьюха (шит) Получает на вход какие варианты (типа список элементов, даты, все в обьекте input) На выход по клику кнопки дергает callback Она имеет в себе еще пару кастомных вьюх Типа DataPicker у которого есть разные параметры зависящие от состояния родительской вьюхи (минимальное, максимальное, выбраное значения) На выходе тоже коллбек

Pavel Kravchenko
Экран использует ViewModel и state в data класе К...

viewmodel содержит в себе state, передавай его в корневую вьюху свою и шарь его части по child. Все. Евенты прописываются во viewmodel и прокидываются также как и state (где нужен туда и прокидывай через родителя). Почитай state management в доке и про udf в кодлабе про state

Sergey Yzenev
viewmodel содержит в себе state, передавай его в к...

Но таким образом все вьюхи будут завязаны на viewModel

Pavel Kravchenko
Экран использует ViewModel и state в data класе К...

зачем ей и вьюмодель и стейт? ViewModel - model for a view (~ state).

Silent829
зачем ей и вьюмодель и стейт? ViewModel - model fo...

state это обьект которым передаются данные А VIewModel это класс который за эти данные отвечает

Pavel Kravchenko
Но таким образом все вьюхи будут завязаны на viewM...

необязательно все, ну и что тут плохого? Не одна же ViewModel. Для каждой View своя ViewModel.

Pavel Kravchenko
state это обьект которым передаются данные А VIewM...

ну так ViewModel же и содержит эти данные и из нее ты и получаешь этот state

Silent829
необязательно все, ну и что тут плохого? Не одна ж...

Ну то что кастомной вьюхе занть о viewmodel совершенно ни к чему Ее задача сильно проще

Silent829
необязательно все, ну и что тут плохого? Не одна ж...

там где не ViewModel, там data class или что-то полегче + калбэк

Silent829
ну так ViewModel же и содержит эти данные и из нее...

Ну да Это выходит из того что я сказал

Silent829
какие аргументы?

Зачем мне эта связанность? Я хочу переиспользовать эту вьюху и с другими экранами и соответственно вьюМоделями

Похожие вопросы

Обсуждают сегодня

Привет, сталкивался кто с такой ситуацией? У меня есть модальное окно Bootstrap, в нем кнопка закрытия: <button type="button" class="btn-close" data-bs-dismiss="modal" aria-...
Виталий
3
А если изначально бот работал так : есть сайт онлайн школы. У каждого ученика свой кабинет. Где он авторизуется по своим данным. И уже в кабинете, на самом сайте делает оплату...
Денис 💡 Фрилансер
13
что это и почему оно? executor.start_polling(bot, skip_updates=True, on_startup=on_startup, File "/usr/local/lib/python3.10/dist-packages/aiogram/utils/executor.py", line 4...
𐌍𐌄 ᕓ𐌄𐌓𐌌Ꝋ𐌓𐌄
2
Возможно речь идёт про сворачивание текста функций в редакторе кода?
George
9
Ребят, привет. Интересует вопрос: есть ли способ получить доступ к WebView в Linux? Рылся-ковырялся, решения не нашел. Объясню сразу задачу, возможно, скажете, что копаю не в...
advanc3d
13
@nerzh 1) а как сделать так что бы при приеме сообщений бот игнорировал/убирал форматирование? Есть стандарные функции для убирания форматирования текста? 2) Возможно ли ...
Куся 🌿⃤ __UKS
5
Что нового в Xcode 16 Xcode 16 приносит много обновлений. Главное - появление ИИ, которое отметили еще в кейноуте. В Xcode появится предиктивное завершение кода, основанное н...
✌️(´ヮ`)
1
Надо ли говорить, что нужно делать локальные зеркала всего что надо вам для работы, что бы не получилось, как с Docker одним прекрасным утром? 🌝 США запрещают предоставление ...
Alex Sherbakov
6
Напомните пожалуйста, v1.1 работает на PHP 8.2?
Ross
7
А что насчет FluentValidation? тоже ведь есть альтернатива у МС.
devman
13
Карта сайта