🔗 Ссылки: TanStack Router: tanstack.com/router/v1 Курс по React и Redux: purpleschool.ru/course/react-... Промокод COURSESTOP на скидку 5% 🎓 Мои курсы: purpleschool.ru 💬 Telegram канал с полезными советами: t.me/purple_code_channel
Наверное, вместо Number(search?.page) ?? 1 должно быть Number(search?.page) || 1. Так как если page не передали, то мы получим undefined, а Number(undefined) -> NaN, NaN ?? 1 -> NaN
Господи, лучший просто, по доке я не совсем смог нормально разобраться, а сейчас начинаю новый проект писать, обязательно теперь буду использовать этот роутер, божественно все рассказал
хотел использовать в новом проекте, стал разбираться и столкнулся с тем, что документация описана криво, например не работают ссылки, или несовсем понятно, например про контекст, показалось что кода как-будто бы писать больше, а в конце, из-за чего вообще забросил, типы в библиотеке не дописаны, тупо есть название интерфейса, а полей в нём нет, закоменчены, в связи с чем будут проблемы с типизацией в проекте. Встретил на зарубежном форуме комент, где человек откровенно удивлён, что библиотеку выпустили, тк он следил за разработкой и она была далека до завершения. Короче буду ждать следующие версии, а там посмотрим
Такая же история, документация пока сырая, в примерах такое ощущение что на скорую руку делали, чисто для демки. Походу да, надо ждать, они ща получать миллион негативного фидбэка и доведут до ума... надеюсь
У меня почему-то не генерируется файл .gen при npm run dev. Хотя плагин добавлен, может быть это потому что vite + electron + react отличается от vite + react просто. Плагин добавлен в конфиг рядом с плагином react()
Спасибо, отличный обзор! 🤘 На будущее интересно увидеть было бы реализацию авторизации, хотя бы минимум и я пока не очень понял, используя эту либу надо ли нам ставить query, для запросов, или она так же хранит кэшем данные в себе и дополнительная либа уже будет лишней, нам хватит только router?
@@PurpleSchoolя вообще такой микс использую: tanstack query у меня хранит то что от сервера получено, effector хранит то что в рамках приложения используется (например у меня с одной стороны форма для ввода данных, с другой стороны превью, это два разных и не связных компонента, и чтобы не костылить effector очень помогает как независимое хранилище)
Не пон, а как обрабатывать загрузку? Я думал по логике танстака в компоненте в data мы должен получить данные и что то вроде isLoading рядом, а по факту ничего такого там нет, как по итогу спинер то показывать?
Спасибо за обзор! Но честно говоря видео получилось не рыба и не мясо. Для обзора слишком длинное для полноценного урока как-то не хватило объяснений зачем это нужно и чем это решение лучше существующих
Блокирующий лоадер - это не круто, конечно. Тема с типизированными роутами не нова, в RN такое есть (без учета фишки сопоставления файловой структуры, ну и в целом не под web заточено, понятное дело). Хочу офтопнуть по Next 13: как сохранять состояние между запросами на серверные эндпойнты (которые /app/api/...)? Там файлы походу не постоянно крутятся, а чуть ли не как в php на каждый запрос вызываются. По крайней мере, console.log в импортируемом в хендлер запроса файле отрабатывает на каждый запрос. Ну и начальная инициализация там через одно темное место, какой-то точки входа нет, если экпериментальная фича положить функцию register в файл instrumentation.ts, типа там можно подобие бутстрапа организовать. Так вот, между запросами хочу хранить данные в памяти, а-ля сервис, который хранит/выдает массив с данными. И ничего не выходит. Т.е. данные можно только хранить на диске и оттуда каждый раз читать (а так как данные нужно иногда менять, то и писать). А хотелось бы в памяти, подумываю попробовать засорить своей переменной global ноды (уж она то должна постоянно крутиться, запросы ожидать), но это как-то кривенько (хотя если заработает, то и хрен с ним). И вообще, интересно, как Next эту свою черную магию делает - нагуглить, почему состояние не сохраняется между запросами не получилось, и пока не настолько отчаялся, чтобы ковыряться в исходниках.
Спасибо за обзор. Подскажите, какой плагин отвечает за предложение вариантов кода (серым цветом), которое появляется при начале создания функции итд. Видел похожее поведение и в vscod.
Вообще не по теме но всё же, у меня в ARC на многих популярных сайтах не работает голосовой ввод, жму микрофончик, даю разрешение и ничего, в гугл переводчике к примеру сразу же выпрыгивает уведомлении о том что отсутствует интернет, вот хотел спросить это только у меня такое или это проблема браузера? P.S. работает только в TH-cam
@@StarkElessar я в доках не лазил, видео глянул - мне хватило понять, что реакт роутер, может всё тоже самое что и тан-стак роутер, так что какой смысл изучать тан-стак роутер - хз
Епт нравится синтаксис vue - используй vue, нравится синтаксис react - используй react. Но имей в виду что плагины новые и современные выходят чаще на реакт. Вакансий на реакте больше примерно в 4 раза и 3 года назад было примерно так же
🔗 Ссылки:
TanStack Router: tanstack.com/router/v1
Курс по React и Redux: purpleschool.ru/course/react-...
Промокод COURSESTOP на скидку 5%
🎓 Мои курсы: purpleschool.ru
💬 Telegram канал с полезными советами:
t.me/purple_code_channel
Наверное, вместо Number(search?.page) ?? 1 должно быть Number(search?.page) || 1.
Так как если page не передали, то мы получим undefined, а Number(undefined) -> NaN, NaN ?? 1 -> NaN
Чувак, ты чисто на волне передовых фронтенд технологий залетел с видосом про Tanstack 👏
Всегда на грани технологий)
Господи, лучший просто, по доке я не совсем смог нормально разобраться, а сейчас начинаю новый проект писать, обязательно теперь буду использовать этот роутер, божественно все рассказал
Спасибо! Рад, что было полезно
@@PurpleSchoolединственное, надо было ещё показать как layouts использовать и показывать loading компонент
Спасибо за видео, жаль про layout ничего не показал
Спасибо!
Поддерживаю
Да, по лейаутам по файл роутингу они чтото намудрили, разбираюсь тоже ))
Спасибо, избавился от реакт роутера в пользу адекватного роутинга от tanstack
Супер)
хотел использовать в новом проекте, стал разбираться и столкнулся с тем, что документация описана криво, например не работают ссылки, или несовсем понятно, например про контекст, показалось что кода как-будто бы писать больше, а в конце, из-за чего вообще забросил, типы в библиотеке не дописаны, тупо есть название интерфейса, а полей в нём нет, закоменчены, в связи с чем будут проблемы с типизацией в проекте. Встретил на зарубежном форуме комент, где человек откровенно удивлён, что библиотеку выпустили, тк он следил за разработкой и она была далека до завершения. Короче буду ждать следующие версии, а там посмотрим
Либа и правда сырая, но потенциал у нее есть, так что пока ждем апдейты
Такая же история, документация пока сырая, в примерах такое ощущение что на скорую руку делали, чисто для демки. Походу да, надо ждать, они ща получать миллион негативного фидбэка и доведут до ума... надеюсь
А как его правильно с Tanstack Query подружить ?
Привет, думаю если бы вы писали в обычном редакторе (vscode/webstorm) код воспринимался бы намного легче, а так спасибо за годный контент 🎉
Спасибо)
У меня почему-то не генерируется файл .gen при npm run dev. Хотя плагин добавлен, может быть это потому что vite + electron + react отличается от vite + react просто. Плагин добавлен в конфиг рядом с плагином react()
Молодой человек подскажи что за тема у тебя в nvim установлена ? Оч уж зашла
Это TokioDark
Спасибо, отличный обзор! 🤘
На будущее интересно увидеть было бы реализацию авторизации, хотя бы минимум и я пока не очень понял, используя эту либу надо ли нам ставить query, для запросов, или она так же хранит кэшем данные в себе и дополнительная либа уже будет лишней, нам хватит только router?
Спасибо! Все равно нужен дополнительный state manager или хотя бы tanstack query
@@PurpleSchool понял, спасибо 🙏, значит одно не исключает другое.
@@PurpleSchoolя вообще такой микс использую: tanstack query у меня хранит то что от сервера получено, effector хранит то что в рамках приложения используется (например у меня с одной стороны форма для ввода данных, с другой стороны превью, это два разных и не связных компонента, и чтобы не костылить effector очень помогает как независимое хранилище)
Дочерних роутов здесь нету? Как то не обнаружил как они работают, или может плохо искал
Не пон, а как обрабатывать загрузку? Я думал по логике танстака в компоненте в data мы должен получить данные и что то вроде isLoading рядом, а по факту ничего такого там нет, как по итогу спинер то показывать?
также как и ReactRouter, с помощью
Спасибо за обзор! Но честно говоря видео получилось не рыба и не мясо. Для обзора слишком длинное для полноценного урока как-то не хватило объяснений зачем это нужно и чем это решение лучше существующих
Блокирующий лоадер - это не круто, конечно. Тема с типизированными роутами не нова, в RN такое есть (без учета фишки сопоставления файловой структуры, ну и в целом не под web заточено, понятное дело).
Хочу офтопнуть по Next 13: как сохранять состояние между запросами на серверные эндпойнты (которые /app/api/...)? Там файлы походу не постоянно крутятся, а чуть ли не как в php на каждый запрос вызываются. По крайней мере, console.log в импортируемом в хендлер запроса файле отрабатывает на каждый запрос. Ну и начальная инициализация там через одно темное место, какой-то точки входа нет, если экпериментальная фича положить функцию register в файл instrumentation.ts, типа там можно подобие бутстрапа организовать. Так вот, между запросами хочу хранить данные в памяти, а-ля сервис, который хранит/выдает массив с данными. И ничего не выходит. Т.е. данные можно только хранить на диске и оттуда каждый раз читать (а так как данные нужно иногда менять, то и писать). А хотелось бы в памяти, подумываю попробовать засорить своей переменной global ноды (уж она то должна постоянно крутиться, запросы ожидать), но это как-то кривенько (хотя если заработает, то и хрен с ним). И вообще, интересно, как Next эту свою черную магию делает - нагуглить, почему состояние не сохраняется между запросами не получилось, и пока не настолько отчаялся, чтобы ковыряться в исходниках.
Спасибо за обзор. Подскажите, какой плагин отвечает за предложение вариантов кода (серым цветом), которое появляется при начале создания функции итд. Видел похожее поведение и в vscod.
Это стандартный complete плагин NVChad
@@PurpleSchool спасибо
Вообще не по теме но всё же, у меня в ARC на многих популярных сайтах не работает голосовой ввод, жму микрофончик, даю разрешение и ничего, в гугл переводчике к примеру сразу же выпрыгивает уведомлении о том что отсутствует интернет, вот хотел спросить это только у меня такое или это проблема браузера?
P.S. работает только в TH-cam
Не пользуюсь голосовым вводом, потому не подскажу(
Я единственный кто не увидел убийцу реакт роутера ?) видос просто не о чём)
полазил по доке этого роутера, и не понял зачем оно мне нужно)) Когда react-router просто идеально покрывает мои нужды)
@@StarkElessar я в доках не лазил, видео глянул - мне хватило понять, что реакт роутер, может всё тоже самое что и тан-стак роутер, так что какой смысл изучать тан-стак роутер - хз
что-то не понятно как схемы search params валидировать нормально в react router , в tanstack router изи
Сколько нам ждать обзор на Nuxt
+
+
Хорошо)
пока сам не выучишь
+
На этом канале одни убийцы каждую неделю)
Триллеры показываем)
+
👍
Запили видос vue vs react в 2024)
Я не такой активный пользователь Vue
Епт нравится синтаксис vue - используй vue, нравится синтаксис react - используй react.
Но имей в виду что плагины новые и современные выходят чаще на реакт.
Вакансий на реакте больше примерно в 4 раза и 3 года назад было примерно так же
@@chirkov поэтому и нужен видос, потому что это очень плохое сравнение.
Опять наш нитакуся пытается выбрать не трендовый стек
Я не пытаюсь выбрать, я обозреваю новинки, чтобы вы принимали взвешенное решение при выборе стека
И преимуществ танстэк роутера перед реакт роутером не раскрыто и видео занудно снято…