Anonymous
Хуки нужны, чтобы не писать классовые компоненты. Всё.
В курсе. Я думал, что useMemo делает что-то подобное
Василий
если я опишу заголовок namspace в namspaces.d.ts например declare namespace DataNamespace { export function normalize(p: string): string; } -то как описать реализацию функции normilize ?
Anonymous
Окей, другой вопрос: вы мемоизируете только сложно-вычислительные селекторы или все, какие есть?
Андрей
А, нет, не найдёшь, тогда самому искать.
Anonymous
https://t.me/react_js/774573
А если я в сагах хочу селекторы юзать?
Андрей
А если я в сагах хочу селекторы юзать?
Тогда внешняя либа, которая тебя устраивает.
Anonymous
Посоветуешь что?
Anonymous
Только не effector, пожалуйста)
Александр
Только не effector, пожалуйста)
Почему не эффектор?
Anonymous
Почему не эффектор?
не совсем нравятся идеи, заложенные в нём
Андрей
Только не effector, пожалуйста)
Я не использую саги и не мемоизирую селекторы.
Dmitry
Ребят, а как при помощи мемо запомнить функцию, а не компонент
Dmitry
Sergey
не совсем нравятся идеи, заложенные в нём
Можно тогда на Reatom глянуть, @reatom_ru
Sergey
👀
Anonymous
Добрый день. Есть нормальные библиотеки реакта для просмотра файлов и изображений. react-file-viewer не рабочий есть кроме него что то?
Тимофей 🛴
Зачем повторять вопрос по сто раз?
Пусть повторяет, в разное время разные люди смотрят чат
Тимофей 🛴
Aleksei
Да вроде норм вопрос
Чего тогда не ответите?)
Anonymous
Библиотека для просмотра файлов. Например сервак дает пдф или ворд файл или эксель я должен показать на каком то viewer
Тимофей 🛴
Чего тогда не ответите?)
Ну я то ничего такого не юзал
Тимофей 🛴
Библиотека для просмотра файлов. Например сервак дает пдф или ворд файл или эксель я должен показать на каком то viewer
Pdf вроде все браузеры открывают, точно нужно в приложении открывать? Может юзер сам откроет где хочет?
Anonymous
Обязятельно нужно показывать на viewer)
Aleksei
Обязятельно нужно показывать на viewer)
https://github.com/infeng/react-viewer - неплохая либа, картинки показывает, масса настроек.
Aleksei
Обязятельно нужно показывать на viewer)
Для PDF - классика https://github.com/mozilla/pdf.js в компонент обернуть самостоятельно можно
Тимофей 🛴
Aleksei
Обязятельно нужно показывать на viewer)
Из более менее свежего http://projects.wojtekmaj.pl/react-pdf/
Anonymous
Какие курсы есть похожие на этот ? https://monsterlessons.com/project/series/internet-magazin-na-reactredux
Anonymous
Что бы без каких-то додумываний, воды и т.д не было - просто скопировал код и все, затем только фильтрацию дополнительно сделал и т.д
Андрей
Какие курсы есть похожие на этот ? https://monsterlessons.com/project/series/internet-magazin-na-reactredux
Не посоветую курс, но на этом сайте можешь поискать https://coursehunter.net/course/react-node-fullstack-ecommerce-s-nulya-do-razvertyvaniya С многословным поиском у них беда, так что ищи просто через слово React и листай результаты, либо через гугл
Eddie
Всем привет решил начать изучать node js и устройство сервера и всего бэкенда, какие ресурсы можете порекомендовать. Заранее благодарю
MVD
А для эксель sheetjs
Который весит 400кб
Тимофей 🛴
Который весит 400кб
тут ебанутая задача, если найдешь что то маленькое скинь
Anton
https://www.portmone.com.ua/r3/services/receipts/get-receipts/shop-bill-id/35357ed00e8a7df3824c5c636367583ba543a99cda6c7bb98a7b2085c581094ca0da7570ef2694f2039b79c31767656aa84bda416c14c58ef2bd3c00b9f319a510
Viacheslav
Интересно, а зачем cb IntersectionObserver'а вызывается сразу же при инициализации даже если никаких пересечений не было, зачем они так сделали и как с этим бороться?
🤴👷‍♂️🦸‍♂️🧚‍♀️
Привет. А маунт в реакте только через CSSTransitionGroup можно анимировать?
Oleg
как начать писать тесты в проекте? с чего начать? с хелперов?
Андрей
Панеслася.
Oleg
начни снизу вверх
не, ну я серьёзно.
Sergey
как начать писать тесты в проекте? с чего начать? с хелперов?
И да. Учиться писать юниты. Тестировать все как черный ящик. Есть только контракт — аргументы, возврат и иногда окружение
Андрей
@XaveScor подскажешь?)
Не понимаю фразы "анимировать маунт".
🤴👷‍♂️🦸‍♂️🧚‍♀️
Не понимаю фразы "анимировать маунт".
Анимация для кейса вида show && <Comp />
Андрей
Анимация для кейса вида show && <Comp />
Нормально - никак. Переноси логику внутрь компонента.
Sergey
в контексте реакта - это снапшоты как output и props как inputs?
Это вход как пропс, контекст, стейт и т.д. Выход это результат работы компонента. Например, дёрнул пропс, отрендерил текст, реагирует на клики и т.д.
Sergey
Но лучше сначала научиться писать юниты
🤴👷‍♂️🦸‍♂️🧚‍♀️
<Comp visible={show}/>
и внутри компонента props.show && <> ... </> ?
Vladimir
🤴👷‍♂️🦸‍♂️🧚‍♀️
внутри компонента css с animation
не понял. в итоге у меня элементы будет в доме всегда, а анимацию на чистом цссе делать?
Sergey
Потому что как только ты завернул текст в ещё один див, тесты сломались, а логика нет. Это неправильные тесты
Александр
🤴👷‍♂️🦸‍♂️🧚‍♀️
йес
Мне кажется так неправильно. У меня модалка не должна быть в маунте
Oleg
может, есть какая-то инструкция по бест практисам по тестам для реакта?
Андрей
Потому что как только ты завернул текст в ещё один див, тесты сломались, а логика нет. Это неправильные тесты
От дополнительного дива что угодно сломаться может, так что или снепшоты, или скриншоты нужны.
Sergey
Почему?
Потому что нельзя делать снимок компонентов. Ибо изменение базового компонента сломает сотни других. И просто так не выяснить сломалось ли что-то в реальности или нет.
Андрей
Скриншоты — да. Снепшоты это тесты ради тестов
Ну, в общем виде - да. Для базовых компонентов и снепшотов достаточно. Немало багов благодаря им поймал.
Sergey
Почему?
Тесты нужны для того, чтобы убедиться, что твои изменения не ломают ожидаемое поведение объекта/компонента. Снепшоты будут ломаться на каждое изменение. А значит, я не могу переписать компонент, запустить тесты и узнать сломал ли я поведение или нет. Тесты упадут в любом случае. Значит от этих тестов никакого толка нет. Снепшоты нужны для другого. Например тестить парсеры, проверка типов, и т.п.