VS-Code: как сортировать импорт в определенном порядке, чтобы соответствовать InteliJ

#visual-studio-code #import #vscode-settings

#импорт #visual-studio-code

Вопрос:

Я работаю в команде, которая в основном использует InteliJ. Там импорт автоматически сортируется после пути. Итак, сначала идет «@namespace», а затем меньше вложенного импорта «./» > «../../» и на том же уровне его алфавитный порядок.

До сих пор я использовал параметр «source.organizeImports» из VSCode, который сортировал импорт для именованного импорта и импорта по умолчанию. Это нельзя настроить, как указано в другом вопросе SO, и здесь его нет: https://code.visualstudio.com/docs/languages/typescript#_organize-imports

Я попробовал расширение VSC vsc-organize-imports, но у него также нет такой опции. Я бы хотел избежать настройки и запуска ESLint для исправления моего порядка импорта. Любые другие предложения, настройки или расширения, которые я мог бы попробовать?

Комментарии:

1. Этот плагин ESLint может выполнять сортировку с помощью --fix команды ESLint: eslint-plugin-import

2. Да, но вы можете сделать только красивее или eslint —fix . И то, и другое вместе обычно не очень хорошая идея. Я использовал это в проектах, где eslint используется для форматирования

Ответ №1:

В другом проекте я еще раз взглянул на этот вопрос. Единственное решение — отключить функцию импорта VSC organize и позволить форматировщику / компоновщику выполнять работу. Поскольку мне не нравится мой линтер при автоматической фиксации, и я обычно думаю, что это работа форматировщика, и у всех должен быть один, вот мое решение:

  • В проекте TS я использовал prettier-plugin-organize-imports. Этот более симпатичный плагин имитирует порядок форматирования функции organize imports, поэтому он в основном такой же. Очень приятно, за исключением того, что он имеет зависимость от одноранговых узлов TS.

Поэтому второе решение для проектов JS:

  • Используйте более красивый плагин prettier-plugin-import-sort. Этот плагин требует, чтобы вы добавили к нему стиль заказа по вашему выбору. Но он поддерживает ванильный JS

Как уже упоминалось, я также нашел правила для eslint с автоматической фиксацией, но мне не нравится это решение. Вышеуказанные пакеты устраняют проблему, если вы используете prettier.

Ответ №2:

Вы можете установить расширение vs-code sort-imports для обеспечения сортировки импорта.

Комментарии:

1. Спасибо. Я скоро это проверю.

2. Как я уже говорил в своем вопросе, мои коллеги не используют VSCode, поэтому плагин VSCode мало полезен.