Dmitriy
Зачем
что б не писать <Component data={data}>
Китикет
что б не писать <Component data={data}>
Зачем не писать <Component data={data}>?
Китикет
Это максимально интуитивный вариант
Китикет
Куда лучше всегда явно указывать ключ, а не мешать {something} и something2={something3}
Dmitriy
Куда лучше всегда явно указывать ключ, а не мешать {something} и something2={something3}
те сокращненную нотацию инита обьектов не юзаешь?
Китикет
те сокращненную нотацию инита обьектов не юзаешь?
Юзаю, но там она очевидна и к месту
Китикет
Передача пропсов через jsx это все-таки несколько другой синтаксис)
Dmitriy
<Component prop>
Ростислав
те ты пишешь <Component prop={true}> ?
Так пишут 99,3% людей 😆
Китикет
А, так это при чем тут
Китикет
Я думал ты имеешь в виду что ее надо вынести в const prop = true вверх над рендером
Китикет
Вернее над return в рендере
Китикет
Я думал мы о другом говорим)
Китикет
<Component prop>
Мы же говорили про <Component prop={prop} /> vs < Component {prop} />)
Dmitriy
Мы же говорили про <Component prop={prop} /> vs < Component {prop} />)
<Component prop> этот пример пример привел что тоже неочевидно во что бабель траспайлит это и живем же
Китикет
По-моему
Китикет
Просто именно {data} выглядит как бесполезная конструкция
King
значит эти три ф-ии уже в бандле
Это только если компилишь в один файл? В несколько кажется будут дубликаты, если не ошибаюсь?
Китикет
Вот например ты передаешь в компонент title="Заголовок", внутри ребенок Title, у которого этот title надо передать допустим в content, получается тебе надо писать content={title}
Китикет
Где-то ты пишешь {data}, а где-то явно content={title}
Китикет
Сокращенный проп с true выглядит элегантнее и проще и не является лишней конструкцией имхо
Китикет
а где то <Component prop> ))
Ну, как я написал выше, не считаю это лишним
Китикет
Удобная штука особенно для ui компонентов
Dmitriy
а где то <Component {...props}>
Китикет
А {data} - переупрощение не понятно ради чего
Китикет
а где то <Component {...props}>
А это необходимость, как ты еще rest передаешь в ребенка?
Dmitry
Добрый день, а как правильно в диалоговых окнах по нажатию кнопки действия, удалять ресурс которое отрисовывается в окне и закрывать его? Метод close вызываю после delete, перед close реакт пытается хотя бы разок отрисовать ресурс, но его уже нет. Я в render вставил условную проверку, но что-то на костыль похоже
Китикет
не буду юзать jsx )
Ну ты странный)))
Anonymous
не буду юзать jsx )
createElement рулит так сказать?
Китикет
Просто у тебя среди декларативного jsx императивный createElement вписывается
Китикет
Чото как-то не то
Ростислав
createElement рулит так сказать?
Большие конструкции на createElement писать больновато))
Ростислав
На самом деле можно привыкнуть,но вопрос - зачем?))
Dmitriy
Просто у тебя среди декларативного jsx императивный createElement вписывается
А поясни почему тут jsx декларативный а нижняя запись императивная?
Китикет
А поясни почему тут jsx декларативный а нижняя запись императивная?
Хз, может это мой предрассудок, но энивей не вписывается
Китикет
Я так понял тебе нравится когда есть миллион вариантов записи одного и того же, поэтому топишь за {prop}
Dmitriy
Хз, может это мой предрассудок, но энивей не вписывается
ИМХО декларативная завись которая заставляет знать в какой императив она транспайлится бесполезна
Китикет
Дело привычки
Китикет
Ладно, об этом походу бесполезно спорить)
Dmitriy
Ладно, об этом походу бесполезно спорить)
<Component style={{color}}> так не разу не писал ?
Ilia
Ребят,как исправить это ( React Hook useEffect has missing dependencies: 'dispatch' and 'products'. Either include them or remove the dependency array react-hooks ) в этом ( useEffect(() => { if (Array.isArray(products) && products.length === 0) dispatch(getProducts(`url`, {title: `products`})) },[]); )
Anton
Всем привет, подскажите пжлст, как сделать переключатель (показать/скрыть контент) для контента, который отрисовается в цикле. У меня на странице 3 вопроса, у каждого есть кнопка скрытия. Вопросы перебираются в цикле. Сейчас сделал переключатель, но при клике на кнопку скрываются ВСЕ вопросы на странице. А надо, чтобы только тот, по которому кликнули. Как сделано сейчас: const [displayUserAnswer, toggleAnswerButton] = useState(true); return ( {questions.map((question, index) => ( <div key={index}> … <button onClick={() => toggleAnswerButton(!displayUserAnswer)} /> … {displayUserAnswer && (сам контент) ))}
Oleg
ребят, подскажите, в чем затык? уже 2ч бьюсь.. то ли я чего-то в упор не вижу, то ли крыша поехала.. https://codepen.io/artof/pen/MNWEMN?editors=0110 имеем простейший хендлер на window scroll событие. Когда докручиваемся до красной полоски, до элемента .watcher - стейт должен менять setLoading на true соответственно. Но почему-то этого не происходит.
Китикет
<Component style={{color}}> так не разу не писал ?
Писал, но тут нет ничего особенного
Dmitriy
Писал, но тут нет ничего особенного
Но ведь это не декларативно
Китикет
Китикет
И ты долго еще приебываться собрался?)
Sergey
Иключение - {...rest} чтобы остальные пропсы прокинуть
Вообще очень не советую так делать
Ростислав
И ты долго еще приебываться собрался?)
Пока не доведет свою правоту
Китикет
Вообще очень не советую так делать
Ну а что делать если надо обернуть html элемент, все возможные пропсы что ли перечислять?
Китикет
Подобный
Dmitriy
Вообще очень не советую так делать
Скажи это стайледам и реакт роутеру)
Anton
Пробовал так, но не сработало: <button onClick={() => toggleAnswerButton(!displayUserAnswer[index])} /> … {displayUserAnswer[index] && (сам контент) ))}
Sergey
Но если оно скрыто, то ок
Sergey
Главное чтобы в пользовательском коде такого не было
Dmitriy
Но если оно скрыто, то ок
Мне мешает даже скрытое
Китикет
Меняет
Oleg
в консоли должно писаться соответствующее сообщение
Oleg
а там ничего не выводится
Китикет
Просто у тебя loading в handler всегда false, потому что на момент addEventListener забрал loading из замыкания при создании handler
Oleg
Просто у тебя loading в handler всегда false, потому что на момент addEventListener забрал loading из замыкания при создании handler
если я в useEffect подпишусь на loading - это решает проблему, но насколько это плохо? события не будут дублироваться?
Oleg
))
Oleg
короче работает и хрен с ним)