@react_js

Страница 2101 из 5115
Сергей
06.09.2017
10:09:23
И новый не начнется, пока не закончился предыдущий

Sergey
06.09.2017
10:09:30
Есть хук componentDidMount или componentWillReceiveProps, обычно там можно разрулить эти вопросы. Но я бы в мидлвар уносил все эти запросы
ты наверно не понял, еще раз более подробно, в дидМоунт рендерю данные из стора, и тут же запрашиваю актуальные

Nikita
06.09.2017
10:09:44
За что?(

Denis
06.09.2017
10:09:50
аминь

Google
Denis
06.09.2017
10:09:50
И новый не начнется, пока не закончился предыдущий

Sergey
06.09.2017
10:11:03
Сергей
06.09.2017
10:11:10
через document.write
Серьезно????

Denis
06.09.2017
10:11:10
Alexey
06.09.2017
10:11:25
ох!

Slav
06.09.2017
10:11:31
Maksim
06.09.2017
10:11:37
через document.write
воу, эта жеска

Sergey
06.09.2017
10:11:40
?

Ҫѐҏӗѫӑ
06.09.2017
10:11:59
я только что влез и как обычно не читал начало, но > а не проще запросить актуальные и после отрендерить? а почему в сторе вообще они неактуальные?

kana
06.09.2017
10:12:03
через document.write
нормальная практика же, все так делают

Google
kana
06.09.2017
10:12:08
модалки через alert

Sergey
06.09.2017
10:12:11
это шутка) в том смысле, а как еще можно рендерить данные ктоме как setState ?

Roman
06.09.2017
10:12:38
это шутка) в том смысле, а как еще можно рендерить данные ктоме как setState ?
ты походу не правильно используешь слово рендер

Slav
06.09.2017
10:12:54
это шутка) в том смысле, а как еще можно рендерить данные ктоме как setState ?
Вызвать рендер компоненты не только через сетстейт можно

Если пропсы сверху пришли, например

Denis
06.09.2017
10:13:11
еще знаю рендер есть в 3d max

уровень обсуждения

зашкаливает

Roman
06.09.2017
10:13:41
Mike
06.09.2017
10:32:33
@zuldare ну так че
че че, я тебе говорю, учитывая js-ную магию с тем, что ты можешь получить тело функции, которую тебе передали, ты можешь ее сделать асинхронной, обернуть в промис, вообще подшаманить как тебе угодно, и потом делать что хочешь

вместо того чтобы сразу вызвать

и учитывая сложность системы в целом, я бы не удивился ничему

я же не говорю что ты не прав и это не так, я говорю, что пока ты не читал код движка реакта ты не можешь 100% утверждать, что это не так

и спросил тебя, читал ли ты

100% уверенность в определенном стиле работы чего-то не читая исходник этого чего-то приведет тебя к провалу

Maksim
06.09.2017
10:35:34
че че, я тебе говорю, учитывая js-ную магию с тем, что ты можешь получить тело функции, которую тебе передали, ты можешь ее сделать асинхронной, обернуть в промис, вообще подшаманить как тебе угодно, и потом делать что хочешь
функцию саму по себе нельзя сделать асинхронной, ты можешь вызвать методы окружения которые просто поставят колбэк в очередь по определенным условиям

Sergey
06.09.2017
10:35:35


Mike
06.09.2017
10:36:43
функцию саму по себе нельзя сделать асинхронной, ты можешь вызвать методы окружения которые просто поставят колбэк в очередь по определенным условиям
блять, ну ты читал что я пишу? ты можешь получить ТЕКСТ ФУНКЦИИ и вмместо вызова ее прошаманить текст и евальнуть

Google
Nikita
06.09.2017
10:37:27
??

Mike
06.09.2017
10:37:30
ты читал о чем изначально разговор?

Maksim
06.09.2017
10:39:28
Mike
06.09.2017
10:39:38
которое ты сам же и запускаешь

так как тебе хочется

Maksim
06.09.2017
10:39:48
так и попросили код

мне тоже интересно

Mike
06.09.2017
10:40:05
например разгребя ее код и после каждой строчки вставив yield

Sergey
06.09.2017
10:40:18
все синсхронно асихронно работает как надо https://jsfiddle.net/487tw586/

Mike
06.09.2017
10:40:19
или после каждой строчки проверку вставить на то что ее еще не убили

Maxim
06.09.2017
10:40:59
Парни, подскажите пожалуйста, как добраться до input из handleEditClick (строка 60) input лежит в компоненте FormEdit (5 строка). И установить на нём фокус?

Maxim
06.09.2017
10:41:07
Заранее благодарю

Maksim
06.09.2017
10:41:19
например разгребя ее код и после каждой строчки вставив yield
ничего что после того как ты выцепишь текст функции, отредактируешь его и эвальнешь это будет уже другая функция?

Mike
06.09.2017
10:41:52
ничего что после того как ты выцепишь текст функции, отредактируешь его и эвальнешь это будет уже другая функция?
да сука, а какая нахуй разница? тебе на вход дали коллбэк который вызвать надо, ты его пячишь и вызываешь. Другая? Да кого ебет?

Maksim
06.09.2017
10:43:05
ну значит под асинхронным убийством функций подразумевается подменить колбэк?

я думал что-то интересное

Mike
06.09.2017
10:43:52
изначальная тема: реакт не может убить рендер до его конца, если стейт поменялся я спросил почему, мне сказали, что теоритически не возможно, я не согласен

конец

Google
Maxim
06.09.2017
10:44:22
)) https://codepen.io/mgreen097/pen/ayxgPa?editors=0010

Maksim
06.09.2017
10:45:35
изначальная тема: реакт не может убить рендер до его конца, если стейт поменялся я спросил почему, мне сказали, что теоритически не возможно, я не согласен
это невозможно потому что в момент рендера стейт не может поменяться физически, если только не в самом рендере явным образом

Denis
06.09.2017
10:46:07
аминь

Ilya
06.09.2017
10:46:10
Maxim
06.09.2017
10:46:30
ок. Спасибо, Илья.)

Admin
ERROR: S client not available

Sergey
06.09.2017
10:47:23
это невозможно потому что в момент рендера стейт не может поменяться физически, если только не в самом рендере явным образом
не сомвсем понял, то есть если делать в render() { setState }, то он может перебить прошлый рендер?

Slav
06.09.2017
10:47:48
Ну ты попробуй

jsbin запусти и нам скинь

Maksim
06.09.2017
10:48:51
не сомвсем понял, то есть если делать в render() { setState }, то он может перебить прошлый рендер?
если setState действительно асинхронный и запускает рендер не в текущем тике, то текущий рендер он не остановит

Slav
06.09.2017
10:49:14
Кто откроет - лучше пускай сохранит содержимое браузера или закроет, кек

localvoid
06.09.2017
10:50:17
setState сложный, есть эдж кэйсы когда нужно в трастэд контексте производить некоторые дом мутации, и в этих случаях пихать задачу в микротаск - не вариант

localvoid
06.09.2017
10:50:38
так же есть всякие эдж кэйсы с инпутами

Maksim
06.09.2017
10:51:16
а будет ждать его, а потом выполниться?
https://developer.mozilla.org/en-US/docs/Web/JavaScript/EventLoop

Сергей
06.09.2017
10:51:45
Кто-то испытавает трудности с 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
похоже на сочинение джуна-ангуляродрочера

Maksim
06.09.2017
10:53:04
а будет ждать его, а потом выполниться?
выполнится в следующем тике, если бы setState был синхронный и напрямую бы вызывал рендер, то были бы велики шансы максимума колстека

Сергей
06.09.2017
10:53:46
react-router простой как 2 копейки, нужно лишь прочитать доки. Дэн тебе ничего не должен, к тому же все инструменты давно придуманы и ответы на твои вопросы есть в виде пакетов, надо лишь погуглить а не стонать что жизнь заебала

Google
Mike
06.09.2017
10:54: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
так а в чем проблема? накидать свой роутер — пара дней топ, если текущие не устраивают, даже форкать ничего не надо. ты пока текст этот писал половину бы уже реализовал

Alex
06.09.2017
10:56:43
Библиотеки которые фиксят 4-й роутер похоже отсутствуют. Не находил. Свои костыли мы написали, хочется найти более стандартные решения.

Mike
06.09.2017
10:57:41
unversal-router? router5?

Alex
06.09.2017
10:58:45
@zuldare Писать своё решение с 0, конечно, не выход. Т.к. Напишетсч оно быстро, но потом будет отъедать много времени на поддержку. За ссылки на альтернативы спасибо. Посмотрю. Если они решают эти проблемы регулярно обновляются и популярны то ?

localvoid
06.09.2017
11:15:57
для тех кто думает что setState асинхронный: https://codepen.io/anon/pen/NvVGpq

Aziz
06.09.2017
11:19:15
кто-нибудь скинуть ссылочку на чат JS может?

Cenator
06.09.2017
11:19:34
В описании

Aziz
06.09.2017
11:25:00
спасибо

Maksim
06.09.2017
11:28:02
для тех кто думает что setState асинхронный: https://codepen.io/anon/pen/NvVGpq
с синхронным рендером можно то же самое?

localvoid
06.09.2017
11:28:59
с синхронным рендером можно то же самое?
что значит синхронный рендер, он всегда синхронный в реакте <16

а вот setState может быть синхронным и асинхронным, зависит от контекста исполнения

Maksim
06.09.2017
11:29:43
что значит синхронный рендер, он всегда синхронный в реакте <16
а клик по твоему с таймаутом тоже синхронные?

localvoid
06.09.2017
11:30:04
а клик по твоему с таймаутом тоже синхронные?
это евент хэндлер, никакого отношения к рендеру не имеет

Maksim
06.09.2017
11:31:17
это евент хэндлер, никакого отношения к рендеру не имеет
так с чего ты взял что setState в этом хендлере ничего общего с рендером не имеющим будет показателем его синхронности или асинхронности?

localvoid
06.09.2017
11:31:28
загляни в колстэк

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