
Denis
06.09.2017
09:29:35
вообще он кинет ворн
что ты вызываешь сетСтейт внутри render
а других способов вызвать сетСтейт во время рендера нет
ибо джс синхронный

Google

Mike
06.09.2017
09:36:00
хмхм
я вот не проверял
но что будет если в рендере в {} вызвать промис, внутри которого сетстейт?
или сделать что-то типа setTimeout(setState)
короч наебать слегка

Stepan
06.09.2017
09:36:58

Denis
06.09.2017
09:37:01
next tick

localvoid
06.09.2017
09:37:05
в cDM и cDU вроде можно было делать сэтстэйт, тк есть эдж кэйсы

Alexey
06.09.2017
09:37:05
а какой смысл вообще в рендере менять состояние, если он должен отражать текущее?

Stepan
06.09.2017
09:37:23

Mike
06.09.2017
09:37:29
мне в теории интересно
но тому парнише кажется надо

Alexey
06.09.2017
09:37:46
в теории там будет maximum callstack exceeded

Google

Sergey
06.09.2017
09:39:06

Mike
06.09.2017
09:39:20
ну вообще, рендер тебе не для логики дали

Evgenii
06.09.2017
09:39:24
Добрый день, нужна помощь, надо помочь разобраться в react starter kit а именно помочь написать небольшую админку, за оплату, skype phenixdeveloper

Mike
06.09.2017
09:39:28
а для маппинга стейта и пропсов в картиночку

Ilya
06.09.2017
09:41:31
промис отрисуется как [Object object]
и каждый рендер будет создаваться промис, так что закончится все или бесконечным циклом или поеданием всей памяти

Mike
06.09.2017
09:44:40
ну как он отрисуется понятно
вопрос в том прервется текущий или нет

Ilya
06.09.2017
09:46:04
нет

Evgeniy
06.09.2017
09:46:38
Всем привет. Использую ExtractTextPlugin для css. Подскажите, пожалуйста, как зарезолвить относительные пути в вынесенном CSS до изображений? Сейчас урл строится так "images/img_01.png", а на проде нужно "../images/img_01.png"

Ilya
06.09.2017
09:47:43
если не ошибаюсь, для setstate внутри реакта свой стек, сначала все попадает туда, а потом на следующий tick начинает рисоваться

Denis
06.09.2017
09:47:57
псс пацаны мне надо отойти

Ilya
06.09.2017
09:48:46
throw, например

Mike
06.09.2017
09:48:54

Denis
06.09.2017
09:49:23
throw где?
у вас есть два вызова функции
последовательные
render()
render()

Google

Mike
06.09.2017
09:53:02
так а кто сказал что именно так?
может там обертка, которая рендер вызывает, а если стейт сменился киляет

Denis
06.09.2017
09:53:37
лол
а как обертка узнает

Mike
06.09.2017
09:53:49
ну камон, асинхронно убивать функцию как будто вчера придумали

Denis
06.09.2017
09:53:53
что вызван render() когда render выполняется

Mike
06.09.2017
09:53:56
может еще промисы отменять нельзя?

Denis
06.09.2017
09:54:33
да не важно что вызвано, рендер выполняется
а потом он будет чекать все остальное

Mike
06.09.2017
09:55:00
да бля может там через caller/callee текст рендера забирается и евалом выполняется почутка
бля всякое бывает
ты движок читал?

Mike
06.09.2017
09:55:16
если да — то можешь утверждать
если нет — то откуда такая уверенность в своей правоте?


Alex
06.09.2017
09:55:26
Кто-то испытавает трудности с react-router?
мы например с такой проблемой столкнулись:
1. путь может быть /smth или /smth/:id
при этом в пути так же может присутствовать пагинация и дата
Дисклеймеры: вполне возможно я что-то делаю не так. Это все про v4. Простите что не прикладываю пруф-линки на соответствующиеобсуждения и документацию, если будет нужно поищу.
добавить это всё в pathname по нормальному не выйдет. С query-параметрами react-router не работает. В результате пагинация и смена даты не попадает в историю, и как показали наблюдения за пользователями это неожиданно и неудобно.
2. Другая проблема, Дэн Абрамов уверяет, что react-router-redux нужен не всем и не всегда. Но не упоминает кейс с переходами по страницам в экшенах. Без react-router-redux приходится городить переходы в компонентах, что выглядит странно.
3. Далее, react-router-redux by design, и это не собираются менять (якобы путь может по разному трактоваться), не хранит в сторе распаршенные параметры пути, а только pathname, которого не достаточно и приходится городить костыли чтобы нормально с этим работать.
4. Ещё он не предлагает никаких годных решений по восстановлению скрола. У вас есть хорошее решение?
А чтобы навешивать обработчики переходов нужно городить обертку над Route
5. Чтобы получить в layout полный распаршенный путь нужно сделать дважды вложенный роутер и класть layout внутрь роута, а результате в react devtools какое-то месиво и каждый раз нужно потерять несколько секунд чтобы найти глубоко вложенную страницу.
6. похоже react-router-redux не хранит в сторе историю и не позволяет приложить свои данные как это делает нативный history
7. Не позволяет обновить (перерендерить текущую) страницу
Фух.
Резюме: говнище ? .
Думаю пилить поверх него библиотеку которой можно будет пользоваться. По сути просто собрать все костыли вместе и обмазать клеем и завернуть в подарочную упаковку.
Часть проблем решается через использование синглтона history (history.push) поставляемого из одноименной библиотеки поверх которой работает react-router.
В следующий сериях:
— Почему redux-form недостаточно хорош
— Почему fetch недостаточно хорош и сколько проблем решит axios


Denis
06.09.2017
09:55:41
ох епта

Ilya
06.09.2017
09:55:45
а можно там маленькие человечки попиксельно рисуют компоненты

Slav
06.09.2017
09:56:00
Тоже пробую v4, не нрафки
Думаю откатываться на 3

kana
06.09.2017
09:56:25
да сама идея реакт-роутера - говно. Всякие <Route /> выглядят как <If>/<For>

Google

Slav
06.09.2017
09:56:58
А как иначе?

kana
06.09.2017
09:57:37
в json-е все сконфигурять

Max
06.09.2017
09:57:51
> — Почему redux-form недостаточно хорош
он говнище

Ilya
06.09.2017
09:58:04

Slav
06.09.2017
09:58:23

Ilya
06.09.2017
09:58:41
есть альтернативы rr?

Mike
06.09.2017
09:58:58

Alex
06.09.2017
09:59:01
@syabro о, интересно, раскроишь подробнее?

Admin
ERROR: S client not available

Denis
06.09.2017
09:59:18

kana
06.09.2017
09:59:32
да я на http://router5.github.io смотрю, интересно

Alex
06.09.2017
09:59:40
И прям могут большую часть проблем решить и звёздочек достаточно и обновлялись не год назад?

Nikita
06.09.2017
09:59:44

Slav
06.09.2017
10:00:33
По-моему единственный там плюс - не нужно дополнительную обертку для редукса ставить

localvoid
06.09.2017
10:00:49
можно поставить ангулар, использовать его роутер и внутри рендерить реактовые компоненты :)

Slav
06.09.2017
10:01:19
>можно поставить ангулар
How about no

kana
06.09.2017
10:01:21
не, обновляется он редко

Roman
06.09.2017
10:01:34

Сергей
06.09.2017
10:03:05

Roman
06.09.2017
10:03:59

Google

Denis
06.09.2017
10:04:54

Сергей
06.09.2017
10:05:34
в смысле
Это процесс, который происходит во время жизни компонента

Slav
06.09.2017
10:05:39

Alex
06.09.2017
10:05:49
Давайте ангулар тут так же как и Б*М запретим?

Сергей
06.09.2017
10:06:08

Slav
06.09.2017
10:06:09
Ты случаем не адепт задачек в духе [] + []?

Denis
06.09.2017
10:06:26
ты случаем читай сначала

Roman
06.09.2017
10:06:32

Denis
06.09.2017
10:06:54
да мне похуй на стейт

Sergey
06.09.2017
10:06:56

Сергей
06.09.2017
10:07:01

Slav
06.09.2017
10:07:05

Сергей
06.09.2017
10:07:19

Denis
06.09.2017
10:07:20
у меня нет вопросов

Roman
06.09.2017
10:07:48
я не понял тогда зачем ему в рендере вызвать сетСтейт?

Сергей
06.09.2017
10:08:01

Sergey
06.09.2017
10:08:08

Alexey
06.09.2017
10:08:24

Roman
06.09.2017
10:08:39
так перед рендером можно обновить данные и потом отрендерить
шо