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

Ребят а какие способы есть для написания глобал стейта? нужна буквально

браузерная логика, чтобы при переходе не слетали стейты

складывать всё в редакс и доставать оттуда - как минимум одна жизнь потребуется для написания

32 ответов

29 просмотров

посмотри в сторону indexDB может он сможет тебе помочь Не понятно только какие данные хранить планируешь, может localstore поможет

quack- Автор вопроса
Destrokhen
посмотри в сторону indexDB может он сможет тебе по...

нужно хранить прям вообще всё, у меня грубо говоря 10 страниц можно открыть в одной вкладке, в каждой странице кучу всякого накликать, и таких вкладок должно быть несколько

quack- Автор вопроса

Ну возьми effector/reatom/mobx или даже простой react-context что касается редакса, там если ты асинхронщину в него не тащищ, то в принципе кода немного (я про redux-toolkit)

quack- Автор вопроса
Rain
Ну возьми effector/reatom/mobx или даже простой re...

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

quack
если я в двух вкладках открою две одинаковые стран...

ну два СПА одновременно запущенных будет у каждого свое состояние например в effector

quack- Автор вопроса

стейт менеджеры разве два одновременно запущенных СПА могут сделать?

quack
стейт менеджеры разве два одновременно запущенных ...

не понял? ты же вроде хочешь что бы у тебя несколько одновременно запущенных приложений было? или ты хочешь что бы у тебя каждый экземпляр компонента работал со своим отдельным хранилищем данных?

quack- Автор вопроса
Rain
не понял? ты же вроде хочешь что бы у тебя нескол...

наверное правильнее формулировка "хочу чтобы у меня каждый экземпляр компонента работал со своим отдельным хранилищем данных"

quack
наверное правильнее формулировка "хочу чтобы у мен...

почти все стэйт-менеджеры позволяют динамически создавать модули/слайсы/реддюсеры (ну или как там они у них называются) логика такая: 1) компонент создается и в useEffect вызывает создание в сторе экземпляр модуля для своей работы НА ОСНОВЕ ШАБЛОНА МОДУЛЯ 2) компонент работает со своим экземпляром модуля стора. 3) компонент при размонтировании удаляет созданный для своей работы модуль стора

quack- Автор вопроса
Rain
почти все стэйт-менеджеры позволяют динамически со...

совершенно не могу найти в доках о динамическом создании модулей/слайсов/редюсеров

quack
совершенно не могу найти в доках о динамическом со...

вроде это https://medium.com/@matheusmm/redux-injecting-reducers-dynamically-e4e193eaa905

можно и так. Ну в связке с контекстом естественно

quack- Автор вопроса
Rain
можно и так. Ну в связке с контекстом естественно

потом каким-то образом определять из какого редюсера доставать инфу, а доставать из него придётся вообще каждое значение + переписывать обновление каждого значения, в целом это и ведёт к тому о чём я говорил, что уйдёт куча времени на написание, хотелось бы чтобы существовал какой-то автономный стейт ахах, которому написал в юзэффекте стейты.запомнитесь_в_текущем_урле() [всегда когда обновляетесь]

quack
потом каким-то образом определять из какого редюсе...

определять элементарно в общем то при монтировании компонента в котором в useEffect создаешь модуль стора записываешь ему например в состояние имя модуля имя модуля либо генерируется при создании модуля либо что то типа "module name template" + genUUID() ну и пользуешь это имя для доступа к модулю

Rain
определять элементарно в общем то при монтировани...

Бро, напиши в описании своего профиля +42777

Rain
???

Ну в описании профиля (О себе) напиши +42777

quack- Автор вопроса
Rain
определять элементарно в общем то при монтировани...

я абсолютно согласен с тем что всё это можно написать и всё абсолютно понятно, дело только во времени которое на это улетит

quack- Автор вопроса
Rain
пара часов?

большой проект на стейтах, за пару часиков только в голове понятно станет каким образом построить эту архитектуру

quack
я абсолютно согласен с тем что всё это можно напис...

я так мелько глянул тред, может я так понял суть проблелмы, но если у тебя редакс то может стоит посмотреть https://redux-toolkit.js.org/api/createEntityAdapter ?

quack
большой проект на стейтах, за пару часиков только ...

ну смотри ты же можешь сделать пустой проект, на котором отработать inject модуля так сказать прототип и вот тебе когда станет понятно как модули инжектировать ты сможешь это внедрить в основной проект

quack- Автор вопроса
Rain
ну смотри ты же можешь сделать пустой проект, на ...

это факт, я вообще нисколько не против реализации с редюсерами и не против научиться

quack
это факт, я вообще нисколько не против реализации ...

Там кстати можно не только инжектировать модули например можно использовать контекст, но не оборачивать все приложение а создавать индивидуальный контекст для компонента

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

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

Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
И никого не интересует какие пакеты кто использует. ((% Заходишь на сайт симфони и видишь поддержку Украины - по законам РФ это ж экстремизм. Только никто не отказывается от с...
Am Ambrion
11
лучше скажите, причём тут паскаль?
Alexey Kulakov
36
Чтобы перехватить все нажимания буков на форме, надо хук ставить? Пробовал на форме ОнКейДаун, оно ловит клаву если фокус не на компоненте с вводом текста
Serjone
15
Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
7
Народ! Впервые клиенту пришло письмо от РКН, у вас, дескать, есть яндекс метрика, а нигде не написано, что вы ее юзаете. Никто не сталкивался?
Sasha Beep
14
Всем привет! вывожу на общей стр дочерние ресурсыв каждом ресурсе галерея, и первая фотка должна выводиться на общей [!DocLister? &prepare=photo !]
Alekso
12
Я правильно понимаю что нет способов получить список ожидающих заявок на вступление в группу с помощью бота из mtproto?
Шамиль Прилов
7
А можно вопрос? Мне сегодня сказали что у меня функция (которая просто заполняет массив значениями) не правильная void Full(double * arr, int n) { for (int i = 0; i < n; i...
† C E †
7
Добрый вечер. Хочу чтобы у меня в классе поле было функцией, которая возвращает строку. Делаю так: interface ... TGetOutPath = function : String of object; ... protec...
Kirill Filippenok
12
Карта сайта