MVD
Как понять? Ты хоть фотку руки скинь, по линии жизни попробуем угадать
Вот структура - node_modules - library - cra - index.js - node_modules - package.json Хочу из index.js зарекваить library. По идее require должен смотреть в текущих нод модулях, потом подниматься наверх и тд пока не найдет. Но почему то ошибку выдает
MVD
Какую?
Да, кажется проблема в библиотеке. Другие находит. разбираюсь
Артём
можно ли в стайлед компоненте как-то написать последовательный селектор? .something ~ styledComponent
Philipp
Ребят, как правильно загрузить файл, чтоб в теле он был доступен по ключу? Вот пример, как swagger генерированный Flask-RESTplus отсылает.
Philipp
Я же пробую вот так:
Philipp
А вот fetch. Но проблема в том, что бэк не жрет такое.
Philipp
Ругается, что не может найти в теле запроса ключа xls_file, хотя в самом запросе вот что:
Герман
Господа хук-профи, насколько законно юзать компонент в хуке таким образом? Я пробежался по либкам модалок на хуках + в целом по примерам хуков и нигде подобного использования не увидел. Всё что я узрел- отдельный импорт модалки в компонент + хук для управления его стейтом. Я чего-то не знаю?) Потыкать в рабочий пример можно здесь https://codesandbox.io/s/silly-bhaskara-eum8f Ищу достойную замену аналогичному HOC'у
Philipp
Кто-нибудь с подобной бякой сталкивался?
Yury
Ребят, какой правильный путь есть для генерации кода, а именно хочу вот это: const Home = lazy(() => import('./containers/Home')); а потом в роутере: <Route path="/home" component={Home} /> генерировать на основе джейсона из пар url и путь импорта
Герман
ну че работает то ведь, значит норм
Нашел аппрув Денчика, что так делать не надо, кто-то с реддита год назад так пробовал уже
Герман
ну тогда может вернуть ссылку на компонент и пропы?
так в либах в целом и делают, но выходит это ни разу не замена ХОК'ов в данном кейсе ибо вся внутрянка модалки будет управляться с помощью компонента. Мутная в общем тема, жду доклада с предстоящего митапа Вы когда-нибудь сталкивались с дублированием кода в компонентах? Пытались ли вы сделать так, чтобы компонент был комбинируемый и был максимально переиспользуемым другими компонентами? В своем докладе Дмитрий расскажет о некоторых приемах использования компонентов высшего порядка (High Order Components) и сравним их с приемами, которые принесли хуки в "синтаксис" Реакта. Все думают, что одно пришло заменить другое, но на данном докладе мы попытаемся разобраться – действительно ли это так? Похоже парни что-то знают
Герман
почему с помощью компонента? непонял
ну тебе надо заимпортить модалку, передать ей пропсы, хендлеры на закрытие и т.д., по сути это тоже самое повторение кода может не совсем верно выразился Нашел либу, где из кастомного хука возвращают функцию с компонентом 🤔 https://www.npmjs.com/package/react-modal-hook
Paul
Хм, я вот взялся недавно за проект на реакте и в нём используется protobuf сериализация для общения с серваком, которую внедрили туда до меня. Он смотрится очень громоздко. Так вот, есть ли какие-то реальные профиты его использования вместо JSON?)
Герман
заимпортить в хуке прям и вернуть из хука ссылку? что будет дублироваться?
Давай представим, что из этого хука ты возвращаешь ссылку на компонент модалки. И вот тебе каждый раз надо поместить саму модалку в jsx и передать ей пропсы. По сравнению с реализацией с помощью HOC'а, тут слушком много кода имхо. С помощью HOC'a ты можешь сделать проще const App = withModal((modalProps) => { const { openModal } = modalProps; return( <button onClick={openModal} /> ) }) А вся логика модалки у тебя будет инкапсулирована в HOC'е включая сам компонент модалки. Только это прокатывает если у тебя обернутый компонент не будет динамично менять контент модалки, т.е. подходит для всяких подтверждений, где контент не меняется аля "подтвердите удаление x" или "подтвердите выход со страницы".
Герман
Вопрос а почему это не обычный портал то? какую задачу мы пытаемся решить?
изначально был вопрос про возврат компонента из хука, ответ я таки нашел. Остальное это моя больная фантазия, забей) Хорошего вечера)
Nikita
Здравствуйте друзья! У меня немного глупый вопрос, но я его задам. Как установить нужный мне шрифт всему проекту на react.js? Сам по себе верстальщик, потом не знаю всех нюансов.
Nikita
таким же образом как для обычных сайтов через @font-face?
Nikita
Плохой верстальщик. В css задай шрифт
Почему сразу плохой? Я реактом не пользовался, наверняка свои особенности
Dmitriy
Почему сразу плохой? Я реактом не пользовался, наверняка свои особенности
Неужели установка шрифта когда то была связана с js?
Mikhail
Плохой верстальщик. В css задай шрифт
Импорт шрифта и верстка немного разные вещи
Mikhail
спасибо ) я тоже так считаю
Шрифт кастомный и в гугл шрифтах его нет?
Nikita
в гугл нет вродемне нужно Helvetica Neue установить
Dmitriy
Импорт шрифта и верстка немного разные вещи
Почему же? У нас есть рутовый html? В чем проблема?)
Mikhail
в гугл нет вродемне нужно Helvetica Neue установить
Угу, это предустановленный шрифт на некоторых макосях, но для консистентности во всех браузерах лучше подгрузить в проект Гугл import custom font to react project
Mikhail
он на телетайп.ин используется, охуенный шрифт кстати
Nikita
Helvetica?)
Nikita
мне на работе просто впроекте надо поменять шрифт, а у меня запара в этом
Sergey
Короче. Я заметил весьма сильное продвижение эффектора от кучи людей и на этом фоне продвижение реатома выглядит достаточно слабым.
👀 Просто упоминание реатома лишний раз тригерит "чувства верующих". Каждый СТМ хорош. Redux, MobX, Effector, Reatom, и т.д. Но также каждый имеет свои недостатки. Сам остановился на Reatom, т.к. он наиболее оптимально решил мои задачи. Кому-то с Effector удобно жить, для кого-то Redux на все времена, кто-то любит хогвардс... П.Н. "Сильное продвижение" не покрывает решение продуктовых задач. В любом случае нужно анализировать риски выбора того или иного решения.
Zhanadil
ребята, как это можно прописать в редаксе? this.setState({check: !this.state.check})
Eugene
check: !state.check ?:)
Zhanadil
check: !state.check ?:)
думаю не верно, первый раз вижу такое, но попробую
js - one love
в редаксе нет же доступа к state
js - one love
внутри редюсора: case: "ЧТОТО": return {...state, check: !state.check}
Tray
Всмысле нет доступа к state... Есть доступ к state-ам стора внутри редусеров и внутри мидлварей... Только человеку надо локальный стейт перенести в редуссер...
Tutu
Народ может кто знает хороший русский курс по next js или gatsby
Zhanadil
внутри редюсора: case: "ЧТОТО": return {...state, check: !state.check}
я вот как раз сделал, но не могу подключить к кнопке, при онклике нельзя ведь передавать просто буулиновское значение
js - one love
так можно onClick( () => { yourFunction(value) })
js - one love
или функцию отдельно myHandler: () => { myReduxFuntion(value) } onClick(yourHandler)
Zhanadil
так можно onClick( () => { yourFunction(value) })
например, вот кнопка находится в другой папке, левое меню находится в другой, и тут я использую редакс. На блоке с меню уже значения редакса стоит. Теперь как могу на кнопке изменить значение стейта в редюсере с true на false?
js - one love
при клике на кнопку вызвать action редюсер который меняет state redux
Tutu
Редакс глобальный?
Kirill
точнее подскажи пожалуйста
Парень, пройди туториалы по Redux.
Kirill
точнее подскажи пожалуйста
Если бы ты хотя-бы удосужился прочитать доки, такой вопрос не возникал.
Tutu
Создавай экшен и вешай его на кнопку. Он изменит стейт редакса и в итоге у тебя измениться нужный тебе компонент. Вообще тема та же что и в обычном js с коллбеками.
Tutu
Прокидываешь функцию которая что то изменяет.
Tutu
Народ вообще есть ли сейчас смысл вообще редаксах и им подобных когда у нас уже все есть для работы без них)
Zhanadil
Прокидываешь функцию которая что то изменяет.
получается тут еще надо подключить мне диспатч
Tutu
Если не придерживаться паттернов то да. В connecte лежит диспатч и state передовая. Что бы что то изменить да ты диспатчишь в глобальный Стейт то что хочешь изменить.
Tutu
А если делать по красоте. Тебе надо как минимум создать ещё экшены и селекторы.
Tutu
Вообще) на Ютюбе много инфы по этому поводу. И сейчас тема разжована очень подробно)
js - one love
https://stackblitz.com/edit/react-e9h7ry?file=index.js
js - one love
точнее подскажи пожалуйста
https://stackblitz.com/edit/react-e9h7ry?file=index.js
Zhanadil
Вообще) на Ютюбе много инфы по этому поводу. И сейчас тема разжована очень подробно)
сейчас на работе сижу, тут у нас почти все заблокировано. Поэтому с этим трудности. Приходится тут спрашивать) А дома могу конечно сам посмотреть и вспомнить
Zhanadil
https://stackblitz.com/edit/react-e9h7ry?file=index.js
спасибо, уже разобрался)
Tray
Если бы ты хотя-бы удосужился прочитать доки, такой вопрос не возникал.
Люто плюсую. Как же меня уже заколебала эта ситуация. Когда решение проблемы есть. В большинстве случаев тебе достаточно потратить час-другой своего времени, что бы реализовать что-то, что тебе нужно, но ты пока не знаешь как. И даже если ты потратил пару-другую часов и что-то не понял, всегда есть комьюнити, которые тебе прямо скажут, где ты напортачил... Но вместо этого: "Я ничерта не знаю, как это сделать, но читать и учиться мне некогда, поэтому я буду тратить в два-три раза больше времени, что бы городить свои велосипеды и превращать код в нечитаемый пиздец"
Tray
А зачем заблочено?
Ютуб, соц. сети, месенджеры, доступ к личной почте, сетевым хранилища и многие другие ресурсы. По соображениям безопасности и что бы люди не прокрастинировали.
Eugene
есть же телефон)