Можно ли использовать api в том же слое, в котором находится модуль в FSD архитектуре?
Всем привет, возникла делема, делаю проект с FSD архитектурой и проблема заключается в том, могу ли я использовать функции из папки api в том же слое, что и находится ui компонент Пример:
Я нахожусь в слое features, я могу использовать в ui компоненте features/api/fetchUsers или не могу. Или я должен вынести fetchUsers в entities/api и от туда получать его, а потом использовать, как правально сделать, дайте, пожалуйста, развернутый ответ. Как правильно делать в этой архитектуре
А что у тебя сегменты в самом слое делают? Это только в шейрд так, а в остальных "слой → разделение на папки → сегменты". Посмотри примеры у них на сайте.
И у них есть плагин для еслинта, но они его давно не обновляли и это только в планах, поэтому чтобы он работал так, как хочется, его надо вручную обновлять. :/ Но попробовать использовать можешь, если что, отключишь.
Дмитрий Путилов, тогда вопрос непонятен. Очевидно ты можешь без проблем импортировать соседние сегменты друг в друга, иначе в чём смысл сегментов?
А импортировать что-то из того же слоя или выше — уже нет (исключение: шейрд).
Использовать слои внутри друг друга — нельзя (кроме шейрд).
Использовать сегменты внутри одного компонента слоя — можно (иначе в чем смысл?).
В целом, всё это можно проверить с помощью еслинта с соответствующим конфигом: https://www.npmjs.com/package/@feature-sliced/esli...
В целом, он актуален, но если есть какие-то кастомные слои или сегменты, то он их не примет. Тут либо форкать его, либо к себе в проект копировать и там править.