Импорты с побочными эффектами (Side-Effect Imports)
ID: side_effect_import | Степень критичности: Низкая (по умолчанию)
Выявляет импорты, которые выполняются только ради их побочных эффектов (например, import './globals';), которые часто изменяют глобальное состояние или прототипы.
Почему это «запах»
Импорты с побочными эффектами делают граф зависимостей менее явным и могут привести к недетерминированному поведению в зависимости от порядка импорта. Часто это «скрытые» зависимости, которые трудно отследить.
Исключения
archlint автоматически игнорирует следующие импорты:
- CSS/Ресурсы:
import './styles.css',import './image.png'и т. д. - Динамические импорты:
import('./module')илиrequire('./module')внутри функций (часто используются для ленивой загрузки или условных импортов).
Как исправить
Постарайтесь сделать инициализацию явной. Вместо того чтобы полагаться на импорт с побочным эффектом, экспортируйте функцию init() и вызывайте ее явно.