Size: a a a

React: русскоязычное сообщество

2020 February 06

AD

Alvah Darmawan in React: русскоязычное сообщество
источник

ꟿⅨ in React: русскоязычное сообщество
Вопрос норм практика вместо того чтобы использовать либы просто подобавлять себе svg-шок которые тебе надо без либ
источник

A

Alex in React: русскоязычное сообщество
Доброго дня, вопрос таков)
я получаю данные по websocket,:
socket.onmessage = answer => {
let data = JSON.parse(answer.data);
usersCount = data.usersOnline.length;
}, и мне нужно отобразить их в компоненте:
export default function DashboardTwo() {
                return (....
                        <InfoBox
                            icon="ion ion-pie-graph"
                            text="Queue"
                            count={usersCount}
                            color="red"
                          />.....)
},
как правильно это сделать? я запутался((
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
Alex
Доброго дня, вопрос таков)
я получаю данные по websocket,:
socket.onmessage = answer => {
let data = JSON.parse(answer.data);
usersCount = data.usersOnline.length;
}, и мне нужно отобразить их в компоненте:
export default function DashboardTwo() {
                return (....
                        <InfoBox
                            icon="ion ion-pie-graph"
                            text="Queue"
                            count={usersCount}
                            color="red"
                          />.....)
},
как правильно это сделать? я запутался((
Нужно инкапсулировать всю логику работы с сокетами в отдельный контроллер, который общается с тем глобальным стейтом, что ты используешь
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
Слово контроллер в данном случае можно для простоты понимать как вытащить в отдельный файл и изолировать от View
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
Реализовать глобальный стейт можно многими путями. Часто выбирают ту или иную либу на основании своих религиозных верований
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
Поэтому не удивляйся, если тебе насоветуют диаметрально противоположные вещи
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
Самой попсовой либой считается Redux на данный момент. Но и с ним не так все просто.
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
В зависимости от навешенных плагинов он принимает совершенно разный вид для разработчика
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
Я про, например, саги, голый релакс и thunks
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
Посмотри ещё такую штуку как Mobx. Тем кто не выстрадал следование архитектуре редакса, она как правило милее
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
А можно взять immer и навернуть себе свою библиотеку под свои нужды
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
Потом тебе нужно будет связать вебсокеты с обновлением выбранной либы
источник

A

Alex in React: русскоязычное сообщество
Ок, спасибо, пошел читать)
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
https://www.npmjs.com/package/mobx-websocket-store
Вот посмотри как пример
источник

A

Alex in React: русскоязычное сообщество
Ок, отлично
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
Но корректно этот пакет два года не обновляется
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
Так что как пример только
источник

A

Alex in React: русскоязычное сообщество
Хорошо, понял, мне и нужен именно пример, посмотреть как вообще взаимодействовать с этими данными
источник

T

The Fallen Phoenix in React: русскоязычное сообщество
источник