169 похожих чатов

Привет. Разбираюсь в работе Flutter, подскажите в каком направлении копать.

Есть некая страница отвечающая отображение отдельных виджетов. Для упрощения предположим что наша страница это шахматная доска и каждая фигура виджет, но размер доски задается сервером и для каждой доски он неизменен. Виджеты на доске однотипные, но могут отличаться изображения, цвет ... Обновление виджетов происходит при поступлении измененных данных через websocket. Сейчас приходит состояние всех виджетов доски и обновляется отображение. За управление состояния отвечает bloc.
Как сделать, что бы обновлялась не вся доска, а только тот виджет для которого изменились данные?
Я предполагаю использовать Map<Guid, Bloc> где Guid это ИД элемента, bloc который отвечает за этот элемент. Далее планирую использовать MultiBlocProvider.
Я подозреваю, что есть более элегантные варианты реализации подобного поведения.

8 ответов

20 просмотров

Надстройка над rest- WS, или grpc Я бы выбрал 2е, и следил за изменением определённого типа и обновляет состояние в блоке

N-P Автор вопроса
.
Надстройка над rest- WS, или grpc Я бы выбрал 2е...

использовать rest- WS, или grpc не проблема, в какую сторону копать что бы управлять отдельно состоянием каждого виджета, мне кажется динамически инстанциировать 100 или 1000 блоков не очень хорошая идея.

N P
использовать rest- WS, или grpc не проблема, в как...

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

N-P Автор вопроса

Если решить подобное через bloc нельзя то что можно использовать? Как я понимаю может подойти подход который используется в играх, как я понимаю в играх состояние каждого отдельного элемента на экране обновляют независимо от других.

N P
использовать rest- WS, или grpc не проблема, в как...

А в чем проблема держать состояния если они однотипные в одном блоке , а нужный виджет обернуть в BlocBuilder и брать состояния для этого виджета , исключив лишние ребилды с помощью buildWhen метода

N-P Автор вопроса
N P
использовать rest- WS, или grpc не проблема, в как...

Я делаю View Model и инжектю ее провайдером

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

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

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Карта сайта