Артем
Если у них достаточно различающееся поведение - сделай, почему нет.
ладно,пока учусь для начала сделаю так,а потом уже попробую совместить все
Valentin
Осторожнее с antD. У них встречаются кривые типы. Как то выбирали для ускоренной разработке ui библиотеку.... иногда пукан горит.
Valentin
Апишка материала вообще ужасна.
Ivan
Всем привет, подскажите пожалуйста, как можно вытащить accessToken из localStorage при запросе методом GET и Authorization : 'Bearer' + (вот этот токен)
Evghenii
Всем привет, подскажите пожалуйста, как можно вытащить accessToken из localStorage при запросе методом GET и Authorization : 'Bearer' + (вот этот токен)
Для запросов можешь использовать axios и интерсептором изменять конфиг при запросе, подставляя в хедеры данные из хранилища
Bogdan
привет всем, подскажите, как избавится от ошибки?
Ivan
Ты уверен что правильно все делаешь?
В общем при авторизации методом post я получаю токен, я сохраняю его в локал, после того как юзер перешел на новую страничку нужно сделать get по урлу и использовать как то этот токен)
Bogdan
декораторы юзал кто @graphql которые, он удаляется сам после размонтирования?
Sheldhur
@sovasergey че там наковыряли опять? я не могу форварднуть месагу, теперь каждый раз говорит что больше одного сообщения за раз отправлять нельзя
Sheldhur
круто придумано
Sheldhur
а если компонент на хуках и надо в нем метод сделать, который бы потом извне через ref вызывался, то как это делается?
Sheldhur
class SomeComponentA { slideUp(e) => {...} render () {...} } class SomeComponentB { render () { return ( <> <SomeComponentA ref={(ref) => {this.testRef = ref }}> <button onClick=((e) => this.testRef.current.slideUp(e))>test</button> </> ) } }
Sheldhur
почему?
Sergey
почему?
потому что у функции по определению методов быть не может
Sergey
в реакте поддерживают это определение
Sergey
у функциональных компонентов нет методов
Sheldhur
окай
MVD
не делается
Можно же передать ref и в него присвоить метод Ref.method = () => {}
Sheldhur
ну если только так, да
Sheldhur
хз только это норм или говно
Sergey
это ж жс
> определение
Aleksey Isaev
Всем привет. Кто-нибудь тестировал функциональные компоненты с хуками??? Это вообще возможно?? Похоже что jest+enzyme здесь бессильна... Извиняюсь если вдруг вопрос заезжен.
Алексей
ну ладн
Aleksey Isaev
Может есть нормальные библиотеки для этого?
Aleksey Isaev
Спасибо, других точно ни библиотек подходящих?
Sergey
https://reactjs.org/docs/test-renderer.html
Sergey
если хочешь тестить содержимое хука внутри компонента, то это наихудший подход, по очевидным причинам
Anonymous
Читал тут про реакт хуки. И во всех статьях преподносят это большой победой, ибо теперь мы можем не писать классы. Но вот чем классы так плохи никто не объяснил. Можете подсказать?
Sergey
гораздо проще и понятнее написать const [state, setState] = useState("initial") чем городить кучу строк кода ради того же самого
Anonymous
расширяемость
Sergey
а ещё shouldcomponentupdate писать то, ещё удовольствие
Sergey
расширяемость
что "расширяемость" хуки гибкие
Anonymous
классы нет?
Sergey
чем больше строк в классе, тем сложнее его поддерживать
Anonymous
кажется ими создавать абстракции удобнее
Sergey
нет
Anonymous
ок
Sergey
использовать классы для абстракции в реакте это ж бред
Anonymous
спасибо
Илья
Читал тут про реакт хуки. И во всех статьях преподносят это большой победой, ибо теперь мы можем не писать классы. Но вот чем классы так плохи никто не объяснил. Можете подсказать?
Лично для меня гораздо проще и читабельней становится компонент. Пока нахожусь в отпуске, решил углубиться в хуки и написать простенькие приложения для отработки самых распространенных кейсов Теперь смотреть на рабочий код, где все в классах как-то стремно. Понимаешь, что код можно сократить, а с ним сократить время написания. А если учитывать, что на работе редакс, а я решил использовать MobX в тестовых приложеньках…
Aleksey Isaev
а что ты тестить в них хочешь?
Функциональность, Стейт и т.д.
Sm•ok
Мобх
Алексей
1. императивность 2. многословность
а типа хуки не императивны?
Sergey
Функциональность, Стейт и т.д.
вот стейт тестить как раз нельзя
Илья
Читал тут про реакт хуки. И во всех статьях преподносят это большой победой, ибо теперь мы можем не писать классы. Но вот чем классы так плохи никто не объяснил. Можете подсказать?
Особенно учитывая то, что на работе тим лид заложил структуру с когда не было траспиляции стрелочных методов в компоненте и это все биндилось. Просто жесть одним словом.
Алексей
ну, вообще, да.
да - императивны?
Danila
Читал тут про реакт хуки. И во всех статьях преподносят это большой победой, ибо теперь мы можем не писать классы. Но вот чем классы так плохи никто не объяснил. Можете подсказать?
Одно из очевидных - невозможность нормального красивого переюзания stateful-логики. Хуки ты можешь заталкивать друг в друга, комбинировать куски логики и потом всё это юзать в любом количестве компонентов. На классах так просто это не сделать.
Sergey
Функциональность, Стейт и т.д.
компоненты надо тестить как черный ящик не надо проверять какой там стейт и прочее тестируй извне. прокидывай пропсы, смотри что возвращает. кликай по элементам и т.д. лезть в кишки это гарантированно запретить себе рефакторить и расширять компонент
Илья
И как
Мне нравится. Был опыт работы с MobX когда был на большом банковском проекте и еще тогда мне очень он понравился. С хуками теперь даже проще стало.
Aleksey Isaev
вот стейт тестить как раз нельзя
Почему нельзя? Ведь не нем завязано проведение компонента
Anonymous
Ну вот у нас разработчик один написал несколько компонентов на функциональных компонентах и хуках. Получилось все тоже самое, но менее структурировано. Про императивность я плохо понимаю аргумент. У нас все приложение использует императивные подходы и нормально с этим живет. Втыкать функциональный подход чтоб был, ну такое.
Sergey
или у вас классы по 400 строк?
Aleksey Isaev
выше ответил
Ты предлагаешь юниты вообще не делать?
Sm•ok
Мутация?
Sergey
Ты предлагаешь юниты вообще не делать?
юниты тем более не должны лезть в кишки
Sergey
всегда черный ящик
Anonymous
ну просто аргумент о структуре кода
Sergey
ну просто аргумент о структуре кода
хуки можно переиспользовать логику в классах — нельзя
Sergey
класс тебе не позволит подключить логику на 200-300 строк, просто написав useMyLogic