Реализирайте нов компонент SignupSuccess. Той трябва да се показва вместо формуляра за регистрация след успешна регистрация.
Frontend
Разкажи малко за себе си, с какво се интересуваш в програмирането, последния си опит, може би си правил някои сложни неща.
Знаеш ли какво е метриката FCP (First Contentful Paint)? Да предположим, че имаме React приложение — социална мрежа с рендиране на сървъра, и има проблем: когато потребител влезе директно в профил, бял екран остава дълго време. Можеш ли да опишеш стъпките — какво се случва от момента, в който потребителят натисне Enter, до появата на първото съдържание?
Харесваше ли ти да работиш с Redux като мениджър на състоянието за сложни форми?
Как работи кеширането на ресурси в браузъра — как браузърът разбира дали да вземе от кеша или да зареди отново, и как да управлява това? Какви са начините за кеширане, включително Service Worker?
Как би реализирал кеширане от страна на клиента?
console.log(1) setTimeout(() => { console.log(2) }, 10) setTimeout(() => { Promise.resolve().then(() => console.log(3)) }, 0); setTimeout(() => { console.log(4) }, 0); new Promise((_, reject) => { console.log(5) reject(6) console.log(7) }).then(() => console.log(8)) .catch(() => console.log(9)) .then(() => console.log(10)) .catch(() => console.log(11)) .then(() => console.log(12)) .then(console.log) .finally(() => console.log(13)) console.log(14)
Усложнение на задачата с memoize: направете така, че функцията memoize като втори аргумент да получава времето на живота на кеша в милисекунди, след което кешът да се инвалидира.
Има код — трябва да разбереш какво прави, да направиш преглед на кода: какви проблеми има и какво може да се подобри.
Чували ли сте за помощника Promise.withResolvers, който наскоро се появи в JavaScript? Трябва да напишете неговия еквивалент вместо втория ред.
Какво мислиш за методологията FSD (Feature-Sliced Design)?
Можеш ли да посочиш някои плюсове и минуси на Redux?
На страницата има списък с 5000 продукта, страницата много лагва. Бизнесът иска да се направи нещо по въпроса. Какво ще предложиш?
Какво ще се случи, ако поставите атрибута async на скрипт в head? Каква е разликата между async и defer?
На страницата с приятели и в месинджъра се показва подобна информация за потребителите. Има два варианта: да се съхраняват потребителите в локални слайсове на всяка функция или в глобален стор. Какви са плюсовете и минусите на глобалния стор в този случай?
Разкажете за предишните си работни места — какво интересно сте правили?
Как може да се получат данни от слайс на друга функция (например, users slice) на страницата на конкретен потребител, без да се нарушават границите между модулите и без да се правят излишни заявки?
Какви алтернативи на Redux знаеш и защо те нямат неговите предимства? Защо Redux е добре тестван, а контекстите — не?
#React регистрационна форма 1. Обяснете как работи StateProvider, споделете мислите си с интервюиращия. 2. Вижте /src/api/mock, обяснете как работи. 3. Проверете цвета на SubmitButton и го коригирайте. 4. Реализирайте клиентска валидация на формуляра в компонента Signup. (\*\*) Имайте предвид задача номер 9. Правила: - Полетата за потребителско име, имейл, парола и повторна парола трябва да имат поне 6 символа; - Паролата трябва да съвпада с повторната парола; - Валидацията трябва да се извършва при кликване върху "Sign Up"; - Полетата с невалидни стойности трябва да бъдат маркирани (props error и helperText); 6. Отговорът на API може да съдържа грешка, която трябва да бъде показана на потребителя близо до съответното поле. 7. Уверете се, че компонентът UserName показва новото потребителско име след успешно изпращане. 8. Реализирайте новия компонент SignupSuccess. Той трябва да се показва вместо формуляра за регистрация. 9. Реализирайте сървърна валидация за съответните полета.
Можеш ли накратко да разкажеш за последния си опит и какво очакваш от новата работа, какво търсиш на новата позиция?