Вебинары

Разбор тестового задания react junior разработчика

Стрим с разбором состоялся 22 апреля. Текст задания ниже.

Итоги

Всего было прислано 14 решений. Были сильные решения.

Так же на стриме были отмечены другие ребята. Всем респект!

Redirect после успешного логина

Всех больше трудностей возникло с редиректом четвертого реакт-роутера, который нужно было сделать после успешного входа с формы.

Код редиректа здесь + реализация защищенного роута (private route) у меня была выполнена так же, как у многих участников.


Тестовое задание #1

Проверяем начальные навыки: react, redux, react-router

Задача

Реализовать приложение, которое умеет показывать следующие страницы:

  • / — главная
  • /login — страница ввода логина и пароля
  • /news — страница с новостями (любая однотипная информация)
  • /profile — страница с произвольным текстом, недоступная без авторизации

На сайте, в шапке или подвале реализовать ссылки:

  • На главную (/)
  • Новости (/news)
  • Профиль (/profile)

Если пользователь кликает на страницу “профиля” и он не “авторизован” — перекидывать на страницу /login

Форма входа (/login) принимает “фейковые” данные:

username: Admin
password: 12345

Если введены другие данные, то показывается сообщения:

Имя пользователя или пароль введены не верно

Если введены корректные данные, то перебрасывать на страницу /profile

Информацию об авторизации пользователя можно хранить в localStorage, простым параметром true/false. Базу данных реализовать не нужно.

Все необходимое на ваш взгляд, прокинуть через Redux.

Оформление (дизайн) — не важно. Сделайте, чтобы можно было комфортно смотреть пример в браузере.

Условия

Код оформить на GitHub с толковым Readme.md (описанием), ссылку прислать на почту maxpfrontend@gmail.com, в письме укажите ваш опыт работы с данными технологиями.

В дальнейшем задание будет усложнено, поэтому не удаляйте свой репозиторий.

P.S. задавайте вопросы в комментариях, либо отвечайте на вопросы коллег.

Если у вас не получается сделать часть задания, то присылайте решение все равно, указывая что именно не вышло и почему.


Расписания вебинаров и прочая полезная информация:

Макс

View Comments

  • У меня почему-то с подходом Артёма (HOC для защищённого роута) была следующая проблема: при изменении URL компонент ререндерится, хотя по этому роуту распологается тот же компонент. Когда переделал под решение Макса (PrivateRoute вместо Route), всё стало работать как часы.

Recent Posts

Elm #2: Загрузка и отображение json

Сегодня будем использовать parcel и IntelliJ IDEA Community Edition. Все инструменты бесплатные. Инициализация elm проекта…

5 лет ago

Elm для React/Redux разработчиков (Elm #1: Знакомимся с Elm)

На данном вебинаре мы знакомились с языком Elm проводя параллели между Elm и Redux, поэтому…

5 лет ago

Масштабируем Elm-приложение (конспект)

Richard Feldman рассказывает как масштабировать Elm приложение без боли. Показаны техники: extended records, подход narrow…

5 лет ago

Elm видео, за ноябрь 2019

В данной заметке вы найдете конспект видео по Elm, которые я посмотрел в ноябре 2019.…

5 лет ago

Итоги 2019. Что учить фронтендеру в 2020?

Итоги года 2019 // Max Frontend Покажи мне свой гитхаб, и я скажу работал ли…

5 лет ago

Почему мне стоит изучать Elm?

Почему стоит изучать Elm? Потому что это интересный вызов, редкие (но вкусные) вакансии и хороший…

5 лет ago