Skip to content

Импорты с побочными эффектами (Side-Effect Imports)

ID: side_effect_import | Степень критичности: Низкая (по умолчанию)

Выявляет импорты, которые выполняются только ради их побочных эффектов (например, import './globals';), которые часто изменяют глобальное состояние или прототипы.

Почему это «запах»

Импорты с побочными эффектами делают граф зависимостей менее явным и могут привести к недетерминированному поведению в зависимости от порядка импорта. Часто это «скрытые» зависимости, которые трудно отследить.

Исключения

archlint автоматически игнорирует следующие импорты:

  • CSS/Ресурсы: import './styles.css', import './image.png' и т. д.
  • Динамические импорты: import('./module') или require('./module') внутри функций (часто используются для ленивой загрузки или условных импортов).

Как исправить

Постарайтесь сделать инициализацию явной. Вместо того чтобы полагаться на импорт с побочным эффектом, экспортируйте функцию init() и вызывайте ее явно.

Released under the MIT License.