Приходилось ли писать скрипты для работы с React
Что проверяют
Выходите ли вы за пределы написания компонентов. Вопрос про инструменты вокруг кодовой базы: массовые правки, генерация однотипных файлов, проверки, анализ сборки. Так отличают разработчика, который лечит боль команды, от того, кто закрывает только свои задачи.
Как отвечать
Назовите классы скриптов и хотя бы один свой случай:
- кодмоды на
jscodeshiftилиts-morph: массовое переименование пропса, переезд на другой импорт после смены библиотеки, снятие устаревшего API. Работа идёт по синтаксическому дереву, а не по тексту; - генератор нового компонента: папка с файлом компонента, модульными стилями, тестом и историей, чтобы структура не расползалась;
- анализ бандла по карте исходников: найти тяжёлую зависимость и увести её в
React.lazyили заменить на лёгкую; - свои правила линтера: запрет импорта из внутренностей чужого пакета, требование ключа перевода вместо строки прямо в JSX;
- сверка словарей локализации и поиск ключей, которые есть в одном языке и потерялись во втором.
Про кодмоды добавьте порядок работы: отдельная ветка, прогон форматтера сразу после замены, зелёные тесты, выборочное ревью вместо построчного.
Где спотыкаются
Делают массовую замену регулярным выражением. Оно попадает в строки, комментарии и чужой JSX, а на вложенных скобках ломается совсем. Дерево разбора видит, что перед ним, регулярка нет.
Второе: пересказывают свой опыт с React вместо ответа про скрипты. Слышно сразу: спрашивали про автоматизацию рутины, а получили список хуков.
Третье: пишут генератор и забывают про него. Через полгода заготовка тянет устаревший подход в каждый новый компонент, потому что правила проекта изменились, а шаблон остался прежним.