Выбор ответа Junior Feature-Sliced Design обновлено
Зачем публичный API слайса
Вопрос
Зачем у слайса FSD файл index.ts с публичным API?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Чтобы снаружи брали только разрешённое, а внутренности можно было менять. Публичный API это контракт слайса: снаружи import { ProductCard } from "@/entities/product", а что внутри лежит в ui/ или model/, можно переставлять.
Варианты ответа
- Это требование TypeScript: без
index.tsпапку нельзя импортировать - Чтобы снаружи брали только разрешённое, а внутренности можно было менятьправильный ответ
- Чтобы ускорить сборку: бандлер читает один файл вместо всей папки
- Чтобы автоматически включался tree-shaking для всего слайса
Разбор
Публичный API это контракт слайса: снаружи import { ProductCard } from "@/entities/product", а что внутри лежит в ui/ или model/, можно переставлять. TypeScript импорт папки без index разрешает только при настроенной резолюции, но FSD нужен не для этого. Сборку barrel-файлы скорее замедляют, а tree-shaking от них не включается, иногда наоборот мешает, если в них есть побочные эффекты.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.