Size: a a a

Next.js — русскоговорящее сообщество

2019 December 10

SB

Sergey Belozyorcev in Next.js — русскоговорящее сообщество
Но и как по мне, то желательно  эту штуку не через компоненты делать (имхо).
источник

О

Олег in Next.js — русскоговорящее сообщество
Sergey Belozyorcev
Ну исходя из твоего кода, то должно быть что-то типо такого

const cart = useSelector(state => state.cart);

useEffect(() => {
 cookie.set("cart", JSON.stringify(cart), { expires: 1})  
}, [cart])
да всё верно. как же я не додумался
источник

О

Олег in Next.js — русскоговорящее сообщество
Sergey Belozyorcev
Но и как по мне, то желательно  эту штуку не через компоненты делать (имхо).
почему это)
источник
2019 December 11

О

Олег in Next.js — русскоговорящее сообщество
Sergey Belozyorcev
Ну исходя из твоего кода, то должно быть что-то типо такого

const cart = useSelector(state => state.cart);

useEffect(() => {
 cookie.set("cart", JSON.stringify(cart), { expires: 1})  
}, [cart])
да. заработало. спасибо 👍
источник

SB

Sergey Belozyorcev in Next.js — русскоговорящее сообщество
Олег
почему это)
Компоненты должы отвечать за отображение данных. Сегодня у тебя в одном компоненте эта логика, завтра в другом и не понятно кто отвественный. По факту это должно храниться в модели приложения.

НО. Всё зависит от кейсов использования/задач :)
источник

О

Олег in Next.js — русскоговорящее сообщество
Sergey Belozyorcev
Компоненты должы отвечать за отображение данных. Сегодня у тебя в одном компоненте эта логика, завтра в другом и не понятно кто отвественный. По факту это должно храниться в модели приложения.

НО. Всё зависит от кейсов использования/задач :)
там просто получается так что у компонента нужна обратывать стейт изменения цены при увелчении кол-ва или выбора веса (карточка товара). я думал в redux хранить доп массив для карточек на текущей странице с их состояниями. но мне посоветовали хранить для такого локальный стейт. в принципе сейчас довольно удобно что всё это локально обрабатывается. а на выходе я просто получаю корзину в куках. большего от карточки не нужно
источник

SB

Sergey Belozyorcev in Next.js — русскоговорящее сообщество
Олег
там просто получается так что у компонента нужна обратывать стейт изменения цены при увелчении кол-ва или выбора веса (карточка товара). я думал в redux хранить доп массив для карточек на текущей странице с их состояниями. но мне посоветовали хранить для такого локальный стейт. в принципе сейчас довольно удобно что всё это локально обрабатывается. а на выходе я просто получаю корзину в куках. большего от карточки не нужно
А почему кстати куки? Они ведь не резиновые. Или там только id хранятся?
источник

О

Олег in Next.js — русскоговорящее сообщество
Sergey Belozyorcev
А почему кстати куки? Они ведь не резиновые. Или там только id хранятся?
там массив с объектами из id, price и count
источник

SB

Sergey Belozyorcev in Next.js — русскоговорящее сообщество
Олег
там массив с объектами из id, price и count
Он на бэке используется?
источник

SB

Sergey Belozyorcev in Next.js — русскоговорящее сообщество
Олег
там массив с объектами из id, price и count
Хотя в целом у вас мало товаров в корзине :) Это у нас может быть и 50-100 шт
источник

О

Олег in Next.js — русскоговорящее сообщество
Sergey Belozyorcev
Он на бэке используется?
ну мне нужно было чтобы при открытии приложения у меня корзина запоминала товары. я их диспачу в _app внутри getInitialProps
источник

О

Олег in Next.js — русскоговорящее сообщество
в принципе можно было и через useEffect на фронте + Localstorage это делать. Я так состояния кнопок в принципе сделал но тогда при первой прогрузке кнопки имеют стандартное состояние в течение 3 секунд где-то. а с getinitialprops изначально корзина прогружает то что нужно
источник

SB

Sergey Belozyorcev in Next.js — русскоговорящее сообщество
Олег
там просто получается так что у компонента нужна обратывать стейт изменения цены при увелчении кол-ва или выбора веса (карточка товара). я думал в redux хранить доп массив для карточек на текущей странице с их состояниями. но мне посоветовали хранить для такого локальный стейт. в принципе сейчас довольно удобно что всё это локально обрабатывается. а на выходе я просто получаю корзину в куках. большего от карточки не нужно
https://t.me/nextjs_ru/18509

Так этот код в карточке товара?
источник

О

Олег in Next.js — русскоговорящее сообщество
да
источник

SB

Sergey Belozyorcev in Next.js — русскоговорящее сообщество
Т.е. если у тебя 20 карточек товаров, то он 20 раз вызовится
источник

О

Олег in Next.js — русскоговорящее сообщество
Sergey Belozyorcev
Т.е. если у тебя 20 карточек товаров, то он 20 раз вызовится
на странице ток 10 товаров. там пагинация
источник

SB

Sergey Belozyorcev in Next.js — русскоговорящее сообщество
Олег
на странице ток 10 товаров. там пагинация
ну значит 10 раз
источник

О

Олег in Next.js — русскоговорящее сообщество
Sergey Belozyorcev
ну значит 10 раз
ну вообще да
источник

SB

Sergey Belozyorcev in Next.js — русскоговорящее сообщество
Олег
ну вообще да
Немного не рационально
источник

О

Олег in Next.js — русскоговорящее сообщество
Sergey Belozyorcev
Немного не рационально
там по срокам ща провал так что я многое опускаю ))
источник