@react_js

Страница 413 из 5115
Bogdan
26.08.2016
19:22:07
пример кода можешь написать?
https://jsbin.com/xasisesope/edit?html,js,console,output - ставлю обработчик на App компоненте а ловятся события при клике на внутреннем компоненте Inner1

у которого нет обработчика

Roman
26.08.2016
19:23:58
а ты клики для чего ловишь? то бишь какая задача?

зачем вешать на App?

Google
Roman
26.08.2016
19:30:23
ну и вдогонку рекомендую перечитать https://learn.javascript.ru/event-bubbling

Bogdan
26.08.2016
19:30:51
а ты клики для чего ловишь? то бишь какая задача?
логика разная может быть, обычно когда в контейнере есть разные типы компонентов - на одних могут быть обработчики на других нет

Roman
26.08.2016
19:32:16
события надо ловить там где происходит клик

в большинстве случаев

да кстати, redux используешь?

подозреваю что просто нет редакса и решаешь задачу пробрасывания данных между компонентами

Bogdan
26.08.2016
19:44:21
да кстати, redux используешь?
да использую редакс, суть то не меняется - есть родительский компонент , есть вложенные компоненты - на одних есть обработчики клика на других компонентах нет. На тех компонентах на которых есть обработчик пишем e.stopPropagation() и все хорошо событие не всплывает но на компонентах у которых нет обработчиков клика событие всплывает входит в конфликт обработчиком события родительского компонента. Кстати вот хороший пример - обычное модальное окно - есть оверлей и внутри форма - по клику на оферлею нужно закрыть модалку но клики внутри формы не должы всплывать. Но на форме то как раз может и не быть обработчика клика чтобы вызвать e.stopPropagation. Да конечно можно добавить обработчик только для того чтобы остановить событие onClick={e=>e.stopPropagation()} но это еще больший костыль

ну и вдогонку рекомендую перечитать https://learn.javascript.ru/event-bubbling
кстати как раз там и советуют: Любой обработчик может остановить событие вызовом event.stopPropagation(), но делать это не рекомендуется, так как в дальнейшем это событие может понадобиться, иногда для самых неожиданных вещей.

Vladimir
26.08.2016
19:47:28
StopPropagation это как евал

Действительно Нужно очень редко

А когда используешь нужно быть предельно осторожным

Vladimir
26.08.2016
19:49:24
Чтобы не объяснять новичку через полгода почему не события

Google
Roman
26.08.2016
19:49:31
Мне нужно было для всякой onclickout функциональности, когда у тебя модальный контрол внутри модальной формочки например

Vladimir
26.08.2016
19:49:35
Нет события

Потом два дня искать в коде где вы за пропагатили событие

И обнаружить что это сделал ты

マイク
26.08.2016
20:04:52
Диалог не в оверлее, а рядом сделай

Ну и как выше написали, стоппропагейшн нужен чуть менее, чем никогда

!important в цсс же не везде втыкаем

В конце концов игнорируй клик, там где надо

Но не убивай его

Roman
26.08.2016
20:11:09
со стоппропагейшеном давно такой goodpractice существует?

マイク
26.08.2016
20:21:01
С создания событийной модели в DOM?..

Лет 20 наверн

Roman
26.08.2016
20:45:11
Лет 20 наверн
ясно понятно

code4aman
27.08.2016
05:25:24
кто юзает vscode, подскажите какие плагины юзаете для джс/флоу и реакта, чтоб синтаксис норм светил и т.д., мб гист с настройками

code4aman
27.08.2016
06:05:58
а бабель? я не смог переопределить .jsx на бабель язык вместо дефолтного

на .js язык js (babel) а .jsx - js react

Ilya
27.08.2016
06:06:50
Ох, где-то в настройках можно указать для расширения синтаксис

Google
code4aman
27.08.2016
06:07:30
да, но .jsx не переопределяет там :(

в общем там понты какие-то с бабель плагином про оверрайд языка, решил просто vscode-flow юзать

Макс
27.08.2016
08:57:48
Всем привет. Не смог найти в документации к react-router как считать params в глубоко дочернем компоненте, withRouter парсеные не дает, только url и прочую ненужную фигню.

react-router-redux тоже не пробрасывает нужную информацию в стор

Alexander
27.08.2016
09:01:42
Насколько мне известно она пробрасывает только в тот компонент который в роуте указан.

Макс
27.08.2016
09:04:33
Насколько мне известно она пробрасывает только в тот компонент который в роуте указан.
Юзал себе router5 со своим редюсером и не парился. Ок, буду выкручиваться

Ҫѐҏӗѫӑ
27.08.2016
09:42:31
@DenisIzmaylov реакт митапа не будет?

Denis
27.08.2016
11:36:58
Будет, но во второй половине сентября :)

Как раз вернёшься

Друзья, у кого ещё есть тема для доклада на React Moscow Meetup в конце сентября? Заполните форму: + https://denisizmaylov.typeform.com/to/NHNCiM и давайте обсудим!

Denis
27.08.2016
12:44:02
@DenisIzmaylov реакт митапа не будет?
Серёж, закинешь инфу в форму?) можно обе темы, о которых говорили, чтобы в след раз учитывать

Ҫѐҏӗѫӑ
27.08.2016
12:50:58
ок, позже

Denis
27.08.2016
13:27:37
Да вроде ребятам интересно :) Я бы тоже послушал. Заполнишь форму?

Vladimir
27.08.2016
13:28:14
Хочу немного сформулировать повестку

Думал может тут кто скажет, что конкретно было бы интересно услышать, в контексте реакта

Andrey
27.08.2016
13:36:13
Думал может тут кто скажет, что конкретно было бы интересно услышать, в контексте реакта
почему стоит использовать flow а не TS. И какие именно проблемы решит использование Flow

Vladimir
27.08.2016
13:36:34
Это само собой)

Google
Nikita
27.08.2016
13:56:41
Flow однозначно!

В смысле доклад про flow хочется

Vladimir
27.08.2016
14:04:19
Есть пожелания?

Denis
27.08.2016
14:11:32
Есть пожелания?
Можно еще у ребят в @typescript_ru спросить )

Ҫѐҏӗѫӑ
27.08.2016
14:18:20
тут все ребята

Admin
ERROR: S client not available

Ҫѐҏӗѫӑ
27.08.2016
14:21:14
я хз чего послушать хочется

Nikita
27.08.2016
14:21:19
Я бы хотел узнать о том, что покрывать типами, а что нет. Где вообще flow стоит отключить. Где брать дефинишны. Когда их стоит вообще самому написать

Ҫѐҏӗѫӑ
27.08.2016
14:21:31
но наверное можно рассказать что PropTypes не нужны

Nikita
27.08.2016
14:21:37
Эти вопросы у меня возникли, когда начал flow использовать

Ҫѐҏӗѫӑ
27.08.2016
14:22:34
> Где брать дефинишны

Nikita
27.08.2016
14:22:44
マイク
27.08.2016
14:23:05
Denis
27.08.2016
14:23:48
Пора Серёже свои стикеры сделать

А кто дружит с Фотошопом?

Давайте сделаем Стикеры с Серёжей?

Или вообще со всей JS-тусовкой =)

Nikita
27.08.2016
14:24:51
там 1 стикер нужен же)

Ҫѐҏӗѫӑ
27.08.2016
14:24:57
не нужен

Google
Nikita
27.08.2016
14:24:57
точнее не нужен))

Denis
27.08.2016
14:25:01
Хотя и он не нужен

))

Evgeny
27.08.2016
14:25:18
А про анимацию нужен доклад?

Denis
27.08.2016
14:25:23
Конечно!

Одна из самых больных тем

Evgeny
27.08.2016
14:25:44
А то я как раз сегодня полдня (ладно, пару часов) ебался с ней, чтобы понять, как она работает

Andrey
27.08.2016
14:26:11
да, анимация нормальная тема для доклада + есть большой количество разных реализаций

Evgeny
27.08.2016
14:26:31
Хочу рассказать про теорию, а не про реализации

Nikita
27.08.2016
14:26:45
а может про кишки реакта кто-то может рассказать?

Evgeny
27.08.2016
14:26:50
А то реализаций-то да, много, но как построить свою анимацию — еле нашёл контент в интернете

Nikita
27.08.2016
14:26:56
как законтрибьютить в реакт, например.

про fibers

Ҫѐҏӗѫӑ
27.08.2016
14:27:08
https://github.com/flowtype/flow-typed/tree/master/definitions/npm

Andrey
27.08.2016
14:27:23
а может про кишки реакта кто-то может рассказать?
вчера был доклад про это на React Rally Day 2

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