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

РЕбят, есть какая-то возможность реагировать на изменение контекста с помощью

useEffect или чего-то подобного? Я столкнулся с проблемой, когда между компонентами один стейт отрабатывает с опозданием и в объект пишу станое, не правильное значение получается. Уэе везде, где можно и нельзя натыкал useEffect, осталось только на контекст грешить

11 ответов

7 просмотров

где то там делаешь setState и при этом ниже берешь просто state? тут каждый день такое обсуждают...setState не проходит мгновенно. асинхронен он

Red-eyed Programmer- Автор вопроса

НЕ совсем понимаю как это реализовать, можно немного подробнее?

Red-eyed Programmer- Автор вопроса

useEffect(() => { context.setQuantityCounter(counterValue); }, [counterValue]); где counterValue - состояние счетчика в текущем компоненте, и я через объект контекста сетаю в стейт у компонента выше по иерархии значение. также вот есть обработчик клика, в котором сетаю непосредственно значение counterValue onClick={() => { +counterValue <= 1 ? setCounterValue("1") : setCounterValue(`${+counterValue - 1}`); }} ТАм еще есть кнопка декремента и функция-обработчик события change на инпуте, в котром хранится значение, но принцип там тот же самый.

Red-eyed Programmer
useEffect(() => { context.setQuantityCounter...

Вы творите какую странную штуку, возьмите стейт менеджер и не мучайтесть, а также прочтите про аргумент сетсиейта в колбек форме

Red-eyed Programmer- Автор вопроса

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

Red-eyed Programmer
Ооооох, там очень обширная задача, мне сейчас сроч...

Да вам бы как раз стейтменеджер жизнь облегчил...

Red-eyed Programmer- Автор вопроса
Dmitriy Shuleshov
Да вам бы как раз стейтменеджер жизнь облегчил...

Спасибо, учту и почитаю про это :) А сейчас скорее всего использую setState и коллбэки, надеюсь в функциональном компоненте его тоже можно применять, как и в компонентах, построенных на классах

Red-eyed Programmer
Ооооох, там очень обширная задача, мне сейчас сроч...

Вот и выросло поколение архитекторов, которые «да нам контекста хватит»

Не, это ж не к тебе предъява, а к тому, кто изначально проектировал приложение, которое в тебя кинули

Red-eyed Programmer- Автор вопроса
Ivan 🧑‍🚀
Не, это ж не к тебе предъява, а к тому, кто изнача...

Ааааа, понял, извини тогда :) Ну как говорится - мне выбирать не приходится сейчас, тушу пожары как могу :D

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

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

Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
32
Хотел бы спросить у знающих, правильную ли я выбрал книгу для начала изучения ассемблера Юрова В.И ? Или есть более лучшие книги для начала обучения?
Botsman
25
Книга Юрова В.И пойдёт для обучения?
Botsman
24
$params = [ 'formid' => 'feedbackForm', 'formTpl' => '@CODE: <form class="form-validate" data-id="ajax_form"> <fieldset class="margin-bottom-md"> ...
Pathologic
1
> Примечательно, что новый владелец удаляет из GitHub любые жалобы, указывающие на подозрительную активность или смену владельца, и, видимо, рассчитывает на то, что пользовате...
Alex Sherbakov
1
Hey there Which is the best Linux destro for developers (coding)? To my research on reddit, they said Linux mint is good for mid level spec and Ubuntu for high Lev hardwar...
Wiz 🪄
11
И ещё вопрос: можно ли типа как на дос как-то запариться и с помощью прерываний выводить текст, вместо функции printf ?
НѣкъиⰘижєжєиꙁъвьсєсвѣтьноѣсѣтиѥсть•
34
а мы ещё не созрели до того, чтобы создать отдельный чатик про настройку редакторов?
Cheese Syrowiecki
16
Всем привет! У меня почему-то по-разному отображается TListView в Debug и Release режимах (FireMonkey)! При запуске под Win приложения TListView заливается программо. в Debug ...
Александр COM
8
Ладно, ещё тупого спрошу. Код должен банально вывести значение регистра на консоль, на деле же не выводя ничего, просто оставляя нерабочую консоль (открыта, ничего не написан...
НѣкъиⰘижєжєиꙁъвьсєсвѣтьноѣсѣтиѥсть•
25
Карта сайта