Андрей
куда
в handlerSwipeMove
Андрей
из пропса достаётся а в хендлер не попадает
Sergey
в handlerSwipeMove
тыуверен onSwipeMove его передает?
Андрей
А всё, спасиб, onSwipeMove={(position) => this.handlerSwipeMove(position, isOpenMenu, as, href)}
Андрей
так сделал
Андрей
тыуверен onSwipeMove его передает?
Не уверен, теперь знаю что не передаёт)
Sergey Makarov
а, действительно, там ж lexical environment)
Sergey Makarov
не заметил
Aleksey
Всем привет, подскажите как восстанавливать скролл при возвращении на страницу по кнопке "назад"
Zackyy
Всем привет, подскажите как восстанавливать скролл при возвращении на страницу по кнопке "назад"
С помощью jQuery можно. Я вот передал в стейт что то вроде "fromBack: true" и проверил, что если тру, то скроллит
Zackyy
Стейт передать через Линк можно
Zackyy
<Link to={{pathname: "/", state: {fromProject: true}}} >{'<- Back'}</Link>
Zackyy
Теперь у самого вопрос возник: Как можно в componentDidUpdate отправить в редакс запрос 1 раз, поменять пропы, и чтобы не создавалось лупа изза обновленных пропов?
Zackyy
Чисто один раз запустить и следующую проверку игнорировать
Yuriy
всем привет подскажите пожалуйста, какой стейт менеджер сейчас использовать модно для маленьких приложений для хранения небольшого количества значений ?
artalar
Запрос с базы данных
И причем тут componentDidUpdate7
Zackyy
И причем тут componentDidUpdate7
Когда у меня несколько окон открыто (имитация нескольких пользователей), то их действия синхронизируются и у всех прилетает обновление
Zackyy
вот из этого прилёта и надо снова отправить запрос на обновленную инфу
artalar
А почему данные прилетают в реактовский компонент, который должен отвечать за верстку, а не в редакс (мидлвару), который отвечает за данные?
artalar
Ничего не говорит
Zackyy
Я уже неделю мучаюсь с вопросом о синхронизации. Пробовал socket.io, да вообще ничего не получилось
Zackyy
что то подобное нужно
Zackyy
Вот через бд как нуб делаю, ибо больше идей нет
artalar
Вот через бд как нуб делаю, ибо больше идей нет
Сформулируйте задачу максимально полно
Zackyy
В cdu в аргументах прилетает prevProps и prevState. Можете их сравнивать
Пробовал, там нечего сравнивать. Данные одни и те же
Zackyy
Сформулируйте задачу максимально полно
В идеале запустить функцию через редакс. Она обновляет пропы нужной инфой. Функция должна запускаться, когда прилетает обновление компонента из-за других пользователей на странице. А вот как оно это делает, я, кстати, тоже не знаю
Zackyy
Нет, опишите не что нужно технически сделать, а какой бизнес-кейс решить
Мультиплеер. Просто комната, куда люди подключаются, у всех отображается релевантная инфа
Zackyy
А что с сокетами не так?
Без понятия как работают. Неделю пытался понять, да без успеха
Китикет
Взаимодействие должно быть через сокет, а он уже должен обмениваться данными с бд
Zackyy
То непонятные ошибки вроде Unexpected token "<" server.js
Китикет
Ошибка парсинга json,
Китикет
или что?
Zackyy
как бы скрипт js, первая строка таких штук не содержит, а все равно ругается
Zackyy
в браузере когда смотрю исходник, он вообще заменяется реактовским индексом хтмл
Zackyy
полный хаос короче
Ivan
какой скрипт то?
Китикет
Не очень понятно, что именно ты пытаешься сделать
Китикет
Что возникает такая ошибка
Zackyy
ну смотри, server.js var app = require('express')(); var http = require('http').Server(app); var io = require('socket.io')(http); var port = process.env.PORT || 3000; io.on('connection', function(socket){ socket.on('event', function(msg){ io.emit('event', msg); }); }); http.listen(port, function(){ console.log('listening on *:' + port); });
Zackyy
Uncaught SyntaxError: Unexpected token <
Zackyy
1 строка
Ivan
это серверная часть, причем тут реакт?
Китикет
Ты это пытаешься в клиент запихнуть?)
Zackyy
а как еще мне сокет подключить
Yuriy
модно вообще его не использовать :)
хорошо а как тогда управлять стейтом ? контекст ?
Китикет
Сначала разберись с клиент-серверным взаимодействием, а потом уже такие вещи
Zackyy
если бы хоть кто нибудь пример бы скинул, когда я спрашивал, не было бы сейчас таких вопросов глупых
Китикет
Сокет, как и БД, расположен на сервере
Bogdan
а как еще мне сокет подключить
так ты событие сделал слушай его на клиенте
Sergey
хорошо а как тогда управлять стейтом ? контекст ?
ну да, в небольшом приложении вполне себе удобно
Yuriy
спасибо
Zackyy
В общем, нахер этот сокет пока что. Проблема остается в одноразовом обновлении пропов через редакс
Китикет
Zackyy
Firestore
Sergey
спасибо
пожалуйста
Cenator 🐈
У него просто вместо скрипта html приходит
Zackyy
Забыли о сокете
Zackyy
Не нужен
Nikolai
В идеале запустить функцию через редакс. Она обновляет пропы нужной инфой. Функция должна запускаться, когда прилетает обновление компонента из-за других пользователей на странице. А вот как оно это делает, я, кстати, тоже не знаю
В каком то месте приложения(в точке входа например?) подписываетесь на сокеты и диспатчите экшены а подписках. А компоненты просто соединяете со стором, они у вас просто представление
Zackyy
Так вот всё в принципе есть, только стор не обновляется если кто-то еще подключился, обновил всем компоненты
Zackyy
да забейте на сокет, я его с туторила взял чтобы проверить как он работает
Китикет
Так вот всё в принципе есть, только стор не обновляется если кто-то еще подключился, обновил всем компоненты
Когда кто-то подключается, сервер отправляет каждому другому клиенту эвент с соответствующими данными, и ты там обновляешь стейт как тебе хочется, ну в общем-то, каждое действие через сокет так работает
Китикет
Не нужно придумывать велосипеды через бд
Nikolai
Сокеты <-> редакс <-> компоненты реакт. Такая архитектура более предсказуемо будет работать, чем как сейчас у вас все в куче намешано
invasion
Ребят, конечно оффтоп, но все же.. У кого-нибудь есть адекватные макеты по верстке с адаптивом? Был бы весьма благодарен вам :)
Zackyy
вы просите 1 тухлую рыбу, а мы хотим дать удочку...
Так уж приложение построено. Делал с чистым джаваскриптом, работало как надо. Реакт со своим редаксом мешает сильно
Ivan
Вот так вот( берут то что модно, не понимая для чего, а потом такие откровения( грустно даже