Size: a a a

JavaScript.Ninja

2020 August 19

IK

Illya Klymov in JavaScript.Ninja
тогда по идее 1 и все, но не удивлюсь если в реакте 17 будет по другому )
источник

DP

Dmytro Petunenko in JavaScript.Ninja
А получит ли див keydown вообще?
Тогда поидее только второй должен сработать, не?
источник

IK

Illya Klymov in JavaScript.Ninja
реакт вешает события на всплытие
источник

D

Dmitriy in JavaScript.Ninja
Illya Klymov
тогда по идее 1 и все, но не удивлюсь если в реакте 17 будет по другому )
1,2 . Насколько я понял реакт гасит своё синтетическое событие стопПропагейшеном, а нативное продолжает всплывать. А useEffect как раз вешает слушателей именно нативно
источник

D

Dmitriy in JavaScript.Ninja
чтоб его убить понадобилось event.nativeEvent.stopPropagation()
источник

D

Dmitriy in JavaScript.Ninja
Хотел подтвердить или опровергнуть свою теорию
источник

IK

Illya Klymov in JavaScript.Ninja
забавно
источник

DP

Dmytro Petunenko in JavaScript.Ninja
Такие забавности могут неплохо так испортить день на отладке )
источник

D

Dmitriy in JavaScript.Ninja
Dmytro Petunenko
Такие забавности могут неплохо так испортить день на отладке )
с чем я сегодня и столкнулся, когда пытался убить клик по эскейпу в селекте, чтобы он не просачивался выше
источник

IK

Illya Klymov in JavaScript.Ninja
Dmytro Petunenko
Такие забавности могут неплохо так испортить день на отладке )
А нечего смешивать нативные события
источник

IK

Illya Klymov in JavaScript.Ninja
Я за такое на кодревью караю
источник

DP

Dmytro Petunenko in JavaScript.Ninja
И то верно )
источник

D

Dmitriy in JavaScript.Ninja
а как бы ты перехватил эксейп в селекте? Слушателем на document?
источник

DP

Dmytro Petunenko in JavaScript.Ninja
Только что возник вопрос, а что если цеплять реакт на голый html тег и строить свое body с блэк джеком и синтетическими ивентами? )
источник

IK

Illya Klymov in JavaScript.Ninja
Dmytro Petunenko
Только что возник вопрос, а что если цеплять реакт на голый html тег и строить свое body с блэк джеком и синтетическими ивентами? )
слава богу так нельзя
источник

IK

Illya Klymov in JavaScript.Ninja
Dmitriy
а как бы ты перехватил эксейп в селекте? Слушателем на document?
слушателем на руте приложения
источник

DP

Dmytro Petunenko in JavaScript.Ninja
Illya Klymov
слушателем на руте приложения
Я еще так делал с кастомными табличками, событие на ячейку и убийство всех ивентов на самой табличке
Типа изолированность
источник

D

Dmitriy in JavaScript.Ninja
Illya Klymov
слушателем на руте приложения
вчера уже спрашивал про вложенные модалки и закрытие селекта в них. Ты вроде упомняул про "регистратор модалок" и перехват эвента в селекте. Так вот вопрос, если все эти слушатели висят на одном руте, то вызываются они в порядке FIFO. Как сделать LIFO и для модалок и для всяких выпадашек? Всех регистрировать в этом "регистраторе" или достаточно только модалок, а прочие выпадашки через "погружение" на рут и потом убивать эвент, чтоб до модалок не доходил?
источник

B

Bogdan in JavaScript.Ninja
Konf
Можешь по закрытию модалки делать
modal.querySelector('.active-option')
А потом по какому-нибудь общему признаку (текст или дата атрибут) выделять элемент с основного списка.

Общий признак для одинаковых элементов может быть атрибут с каким-нибудь ID
Например, data-id=7382 для цвета дуба
сейчас еще пытаюсь заменить весь див с выбранным пунктом на тот, что на странице
$( ".options-box-first" ).replaceWith( $( ".modal-body > .options-box-first" ));
и это почему-то не работает
в replaceWith можно передать весь див или по другому нужно?
источник

PU

Pavel Usov in JavaScript.Ninja
Привет, знатоки)
Подскажите плиз качесвенные наушники с шумоподавлением, кто-что пробовал, пользует?
Мне кажется программисты JS в этом хорошо разбираются)
источник