@react_js

Страница 4521 из 5115
aspirin
31.07.2018
15:59:01
тогда мы имеем очень массивный код для постоения клиента при запросе например из контейнера

Cenator
31.07.2018
16:03:18
Делаешь класс, а там дохера статик методов
можно просто файлом с функциями тогда уж и потом import * as API

Google
aspirin
31.07.2018
16:03:28
и как это в функциональном виде написать?
в функциональном я не очень силен, думал что-то типа: requestAxios.js async function request(options) { ... try,catch,call to traspot lib... } user.js import request from '../request'; ... async login(email, password) { return await request({...}); }

или передавать request непосредственно в вызов, например: async login(req, email, password) { return await req({...}); }

тогда надо всего подключать 2 файла в контейнере

Делаешь класс, а там дохера статик методов
> 250 статик методов грусто, да и потом как с передачей адаптера поступить

делать наследование точно не вариант сразу SOLID нарушаем

Australo
31.07.2018
16:08:07
Map({ a: { x: xd }, b: { x: dx } }).map(({ x }) => <div>{x}</div>) в чем проблема?
ну это при этерации , да , но если, к примеру, нужно много всего из стейт достать разного ? такую строку заменяете геттами ? const {foo, bars: {bar1: {a, x : {y}}}} = this.props.state

aspirin
31.07.2018
16:08:20
можно конечно и фабрику впихнуть но там тоже грусть, теряем инспектирование и добавляем скрытой магии

Australo
31.07.2018
16:09:32
да
последний вопрос, а как смотрите на введение HOC с переводом в JS ?

aspirin
31.07.2018
16:09:40
а потом приходит в голову что было бы неплохо оставить уровень для создания событий дабы подписыватся например на неожиданные входящие сообщения по ws

Cenator
31.07.2018
16:10:08
последний вопрос, а как смотрите на введение HOC с переводом в JS ?
я не в курсе насчет правильности, но перевожу именно в mapStatetoprops

Vadim
31.07.2018
16:10:42
Ещё один нарко вопрос, может ли дочерний компонент получить метод родителя, если метод не был передан в пропсе и его или аналог нельзя получить в редаксе? :)

Google
Australo
31.07.2018
16:13:30
я не в курсе насчет правильности, но перевожу именно в mapStatetoprops
не совсем понял , так вы всетаки переводите в JS ? просто выше писали что тяните Immutable до рендера

Cenator
31.07.2018
16:13:49
aspirin
31.07.2018
16:14:01
тут конечно может помочь разного рода композиция, например: const apiAdapter = new AxiosAdapter(...); const apiSubscriber = new Subscriber(...); const errorHandler = new ApiErrorHandler(...); const apiUser = new UserApi(apiAdapter, apiSubscriber, errorHandler);

Andrew
31.07.2018
16:16:06
> 250 статик методов грусто, да и потом как с передачей адаптера поступить
Делай просто клиент, и кидай инстанс клиента в мидлвару

И при вызоле передавай endpoint

aspirin
31.07.2018
16:16:56
а трабл в чем?
в ноде есть EventEmitter который идет в наследование, в react и react-native подозреваю нужно думать что-то свое и дружить это с редаксом

Вячеслав
31.07.2018
16:19:18
в ноде есть EventEmitter который идет в наследование, в react и react-native подозреваю нужно думать что-то свое и дружить это с редаксом
Если цель передать данные в редакс, то мидлвары, но имхо лучше иметь доп абстракцию, чтобы можно было подписаться на эвент где угодно

Andrew
31.07.2018
16:19:53
Ты состояния все равно в стейте будешь хранить

Sergey
31.07.2018
16:21:09
Помогите с внутренностями react, что такое ReplaceState и что у него за тэги?

aspirin
31.07.2018
16:22:00
А зачем тебе ивент где угодно?
например если тебе придет приглашение в группу пользователей по ws, т.е. нужно подписывать на события

Andrew
31.07.2018
16:22:29
А уведомления в sw себе крутить

Вячеслав
31.07.2018
16:23:18
А зачем тебе ивент где угодно?
Не везде нужно менять стейт по эвенту, например нужно пересоздать подключение к сигналинг серверу WebRTC

State должен об этом знать
Не обязательно все пихать в state

Google
Andrew
31.07.2018
16:24:04
Короче это более менее место для работы с сайд эффектами

Вячеслав
31.07.2018
16:26:09
Мидлвары для такого
Можно сделать через них, но на мой взгляд это лишнее в данном кейсе, у меня написана небольшая обертка над вебсокетом со своим паб сабом

Andrew
31.07.2018
16:26:12
Если хочешь- делай отдельный сервис, но вот да, с подписками будет боль

aspirin
31.07.2018
16:27:24
у меня сейчас все складывается не считаю один трабл, инициализация для доступа к api занимает кучу строк

Andrew
31.07.2018
16:28:56
В чем боль?
Ну надо его делать как минимум

Kendr
31.07.2018
16:30:03
Если хочешь- делай отдельный сервис, но вот да, с подписками будет боль
Пусть лучше с подписками будет боль чем наркота и алкоголь

Andrey
31.07.2018
16:30:21
ребят, по redux вопрос: как в теле middleware получить следующий state после выполнения всей цепочки middlewares?

from
31.07.2018
16:31:06
если ей важно быть последней, поставь её последней

Вячеслав
31.07.2018
16:31:48
Ну надо его делать как минимум
Простейший самописный это ~30 строк, а так есть RxJs

Andrey
31.07.2018
16:32:27
ок, не важно где они, вопрос тот же как получить актуальный стейт?

Andrew
31.07.2018
16:32:39
Простейший самописный это ~30 строк, а так есть RxJs
Ну да, если есть уже rx или most. Тогда можно не парится

Andrey
31.07.2018
16:33:52
Ну у тебя ж есть доступ к state
если из мидлвара диспатчится экшн, его результата в getState не будет, правильно же?

Andrey
31.07.2018
16:35:27
Ну будет ток в следующем по идее
в этом и вопрос, как получить стейт, который будет на следующем шаге? есть какие-то практики, шаблоны?

Andrew
31.07.2018
16:35:32
Глянь redux logger, по идее ты знаешь как твой экшон изменит стейт

Google
Andrey
31.07.2018
16:37:08
https://redux.js.org/api/applymiddleware#arguments
о, спасибоны, то есть возвращать не next=>action а ({getState})=>next=>action

стоп, сейчас у меня и есть такая сигнатура, но getState возвращает стейт до мержа

Vadim
31.07.2018
16:43:50
Наркоманские вопросы закончились) Вопрос адекватнее))) Передаю компоненту в пропсы другой компонент, как на этот компонент полученный через пропсы накидать эвенты (онКлик например)?! :)

aspirin
31.07.2018
16:54:12
крч я пока ходил в магазин думал и последня фигня в том как правильно все собрать, и реши что бы не возится долго и не мучатся сделать инициализацию адаптера со всем необходимым отдельно от всей структуры, назвать его например adapterApi.js, передовать в конструктор отдельного api класса будет примерно так: import adapterApi from 'adapterApi'; import NewsApi from 'NewsApi'; ///или что-то типа: import { NewsApi } from 'Apis'; ... const clientNews = new NewsApi(adapter); class NewsContainer { async getNews() { const news = await clientNews.getFresh(...); this.setState({ news }) } }

а подписатся на все что нужно подключив adapterApi в главной контейнере где и связать его с редаксом*

Admin
ERROR: S client not available

aspirin
31.07.2018
16:54:57
что думаете?

и структура будет что-то типа: - services - - adapterApi.js - - api - - - adpter - - - - transport - - - - - WebSocket.js - - - - - Axios.js - - - - Adpter.js - - - client - - - - Auth.js - - - - User.js - - - - Search.js

Sergey
31.07.2018
19:00:08
а загрузку истории чата и подгрузку при скроле далать по http или по секетам ?

Sergey
31.07.2018
19:04:48
ок

Ҫѐҏӗѫӑ
31.07.2018
19:08:47
говорят вот тут презентуют реакт 17 https://conf.reactjs.org

Andrew
31.07.2018
19:12:11
говорят вот тут презентуют реакт 17 https://conf.reactjs.org
Я так и думал что уже осенью будут анонсировать

Сергей
31.07.2018
19:13:05
Ҫѐҏӗѫӑ
31.07.2018
19:13:26
так а нафига там быть?

Сергей
31.07.2018
19:13:35
а

Ҫѐҏӗѫӑ
31.07.2018
19:13:55
в октябре и в европах много норм конф

Google
Vadim
31.07.2018
20:32:01
Buka
31.07.2018
23:31:17
Вопрос такой. Есть список карточек, есть компонент который отвечает за детальное отображение конкретной карточки. При клике на элемент в списке, происходит переход на другой роут, где находиться компонент с детальным отображением В общем довольно стандартный кейс. Вопрос вот в чем, если вернуться обратно(из деталей, в список) и нажать на другую карточку, то сначала рендерятся данные относящися к предыдущей, а потом уже актуальные. Надеюсь понятно, в чем моя проблема ...

Buka
31.07.2018
23:33:51
на анмаунт
Думал об этом. А как корректно обнулять?

Andrew
31.07.2018
23:34:03
делаешь экшон

Buka
31.07.2018
23:34:24
Я понял спс)

Andrew
31.07.2018
23:34:51
и в стейте делаешь return initState или че у тебя там

Алексей
01.08.2018
01:05:03
Всем привет! Помогите с react-hot-loader . НЕ понимаю как webpack настроить

Алексей
01.08.2018
01:37:12
куча

или я не умею готовить

в общем сделал все по мануалу

webpack не ругается

Сергей
01.08.2018
01:56:25
https://blog.bitsrc.io/11-javascript-utility-libraries-you-should-know-in-2018-3646fb31ade

Алексей
01.08.2018
01:57:16
но когда я обновляю страницу в браузере, то роут работает серверный, реактовский роут не пашет

Страница 4521 из 5115