Visual Studio Code не видит закрытие скриты JS

Рейтинг: 0Ответов: 1Опубликовано: 19.03.2023

Описание

Когда работаешь с обычным JavaScript (баз TypeScript, серверов и.т.п.) есть один неудобный момент: Visual Studio Code не видит скрипты которые не открыты в данный момент:

Даже если они в той же папке. Ошибка пропадает если открыть нужный скрипт.

Держать все скрипты постоянно открытым очень неудобно, особенно когда у тебя их куча:

Вопрос

Есть ли какие-нибудь настройки, плагины, конфигурации, или что-то еще, что поможет увидеть скрипты даже когда они закрыты?

Ответы

▲ 0Принят

Ответ

Нашел необычный подход. Из себя представляет группа трюков, результат которого решает проблему.

Нам надо "импортировать" другой скрипт в текущий, при этом не трогая сам Java Script. Для этого мы используем команду из JSDoc - @typedef вместе с командой import(""). Получаем вот такую строку:

/** @typedef {import("./modules/color.js")} */

После чего мы получим ошибку, что

Файл '...' не является модулем

Нам надо игнорировать эту ошибку, поэтому добавляем // @ts-ignore в предыдущую строку. Получаем такую конструкцию

// @ts-ignore
/** @typedef {import("./modules/color.js")} */

После чего все данные из другого скрипта будут "импортированы" в текущий скрипт.


Дополнение

При чем, если мы "импортируем" скрипт в котором уже "импортированы" другие скрипты, то данные из них так же будут добавлены текущий скрипт.