Таймураз
а как гарантировать?
Стараться передавать примитивы в депсы
Oleg
Стараться передавать примитивы в депсы
у меня просто есть фрагмент с колбеком, и если там будет другая ссылка - у меня пошлётся лишний запрос. пустой массив - примитив?
Таймураз
а... окей. спасибо.
Это все в доке есть, я это все узнал из доки Она вроде на русском должна быть
Таймураз
дока для слабых. сильные узнают всё из чатика.
Ты у слабого совета спросил, значит
Андрей
Если депсы- пустой массив- гарантирует
А откуда инфа? Я в доке не вижу этого исключения. Написано просто - useCallback - это useMemo, а useMemo реакт может пересоздать когда захочет. Никаких уточнений для [] нет.
Таймураз
А откуда инфа? Я в доке не вижу этого исключения. Написано просто - useCallback - это useMemo, а useMemo реакт может пересоздать когда захочет. Никаких уточнений для [] нет.
У депсов везде тот же принцип Не будет пересоздания, вызова если они не изменились Я проверял пересоздание хендлера на кнопке- ссылка сохранялась
Таймураз
Я тебе в доке useMemo показал, где прямо написано, что это правило не работает.
Забыл об этом кейсе Вообще то, что они описывают- маловероятно, но да, как факт они об этом сказали В любом случае на данный момент она сохраняется (но стоит исходники глянуть)
Oleg
В будущем (согласно доке)
я не понял, что ты сказал, если честно.
Таймураз
Таймураз
Верно. Я придерживаюсь позиции, что надо опираться на спеку, а не на текущую реализацию.
Тем не менее, твое изначальное утверждение все также неверно:)
Dartess
я не понял, что ты сказал, если честно.
В документации написано что реакт сможет в будущем удалять ссылку из-за недостатка памяти или других оптимизаций. Пока нет. Поэтому никому никак не доказать что такое потенциально может быть.
Таймураз
Почему?
Потому что на данный момент он уже так работает
Андрей
Потому что на данный момент он уже так работает
Прекрасно, значит будущие обновления реакта поломают твой код.
Андрей
Тык
Это уже вкусовщина. Я указываю в deps всё, что берётся из замыкания.
Таймураз
Это уже вкусовщина. Я указываю в deps всё, что берётся из замыкания.
Сам уже хреново мысль донес Ссылаться на коллбек функцию, у которой так же депсы- хреново в эффекте
Таймураз
Короче кейс выше
Таймураз
Почему хреново?
Потому что лишний раз эффект может быть вызван
Андрей
Понял, поэтому нужно создать именно useMount и useUnmount, чтобы подобной параши не было. Ну и читать будет проще.
Андрей
А если апдейт нужен?
Пиши useEffect, потому что его семантика - работать при изменении deps.
Андрей
Но его же кейс- апдейтить, как раз:)
К примеру, мы сегодня утром выяснили, что useUnmount - не такая уж и тривиальная штука.
Андрей
Короче, походу я за сегодня накопал себе тему для доклада на митапе.
Андрей
э... можно не надо?
Нельзя. Тебе специально доку написали.
Андрей
где выступаешь? на ютубе будет?
Без понятия. Посмотрим.
Андрей
это что за покемон? просто useEffect с return?
Конец здесь. Двигайся по реплаям. https://t.me/react_js/748329
King
У меня все работает, хз Позже могу скинуть как
когда скинете, пожалуйста, тегните меня
Dmitry
почему в useEffect нужно включать коллбэк?
Потому что он изменится. А эффект будет тригерить старую функцию
Orest🇺🇦
привет, решил разделить js файл на несколько, прописал импорты и експорты, после этого браузер перестал видеть папку c js файлами
Таймураз
ты ж админом был час назад.
Я и 2 часа назад админом был
Таймураз
@popuguy @mega_tauka сорян наебал Проверил, не ругается Не могу вспомнить, где работало, но не в рабочем проекте
Oleg
Oleg
Orest🇺🇦
привет, решил разделить js файл на несколько, прописал импорты и експорты, после этого браузер перестал видеть папку c js файлами
добавил type="text/javascript" теперь нашло файлы, но импорты не понимает, какой тайп надо поставить чтоб все работало ?
Oleg
кто-то знает, почему отправляются какие-то запросы, которые (вроде) не были вызваны? в частности запрос на себя же (локалхост)
Orest🇺🇦
а реакт причем?
реакт нипричём, просто подумал что есть здесь люди которые помогут и с нативным js
Oleg
расширения браузера, сборщик
а как это можно откопать? там просто приложение виснит на секунды две. предположительно из-за запроса. это не расширение - воспроизводится на всех компах.
Eugene
кто-нибудь сталкивался с ошибкой Cannot find module 'caniuse-lite при деплоинге?
🦜
везде.
но ты говоришь про локалхост
Oleg
но ты говоришь про локалхост
ну да, ибо работаю сейчас локально.
🦜
ну да, ибо работаю сейчас локально.
а теперь сбилди прод и засерви его
Oleg
телега, сука блять. на проде запрос не не локал, а на сервер.
Oleg
ну что это
Mihail
ну что это
Обнови тг, там счётчик тайм-аута будет
Oleg
Обнови тг, там счётчик тайм-аута будет
куда обновить? последняя стоит.
Mihail
Anonymous
Мария рекрутировала рекрутировала, да не вырекрутировала))
Andrey
реакт нипричём, просто подумал что есть здесь люди которые помогут и с нативным js
зачем ты бьешь функции в отдельные файлы, которые должны быть в компоненте? Ладно, если ты один пишешь. А если несколько человек? Ты думаешь приятно гулять по тонне файлов в поисках заветной функции на 3 строчки?
Andrey
А IDE не найдет что ли?
а ide ищет, не затрачивая ресурсов? а на поиск не тратится время? а на переключение вкладок ide?
Orest🇺🇦
зачем ты бьешь функции в отдельные файлы, которые должны быть в компоненте? Ладно, если ты один пишешь. А если несколько человек? Ты думаешь приятно гулять по тонне файлов в поисках заветной функции на 3 строчки?
братишка, делаю на нативном js тестовое, лично для себя, ( групирую в 3 файла, основной js, функции на ивенты, и creators, ко по мне очень хорошо все будет. искать ничего не надо ( ctrl + click) по функции, и IDE тебя отведет сразу на функцию
Anonymous
Я хз как в реакте и джсе происходит, пока только в планах перейти на сторону фронта, но на бэковских языках и их IDE все предварительно индексируется и выдается моментально
Andrey
братишка, делаю на нативном js тестовое, лично для себя, ( групирую в 3 файла, основной js, функции на ивенты, и creators, ко по мне очень хорошо все будет. искать ничего не надо ( ctrl + click) по функции, и IDE тебя отведет сразу на функцию
короче очередной велосипед, ясно P.S. удачи тебе объяснить коллегам, как легко искать тонну функций по 3 строчки по клику, которые должны быть просто в компоненте
Andrey
IDE тратит электричество во время поиска по файлам!!1
очень смешно, может быть на конференции в след году расскажешь, как надо правильно бить файлы из компонент и что стандартные подходы к композиции - это фигня?
Orest🇺🇦
Но такая структура вообще не будет удобна на проекте больше учебного. Вообще и на учебном уже заебешься
согласен, что делаю не камельфо, но я только учусь, тестовое на курсы в компанию по реакт, у меня еще все впереди) если есть линка где обсуждают какая структура хорошая а какая нет, с удовольствием прочту)