Я не могу получить VS Code (для Windows, но я не думаю, что это имеет значение), чтобы найти и открыть файлы, которые не относятся к текущему файлу. У меня есть приложение React, которое следует стандартной структуре, где папка sr c находится наверху иерархии. См. Прикрепленный снимок экрана ниже.
Файл src \ components \ App \ index. js содержит много кода, среди которых следующие два оператора импорта:
import App from './App';
import Routes from 'src/routes/Routes';
Когда у меня есть указанный выше индекс. js файл открыт, я хочу открыть оба файла, на которые ссылаются операторы импорта. Вы заметите, что первый оператор импорта ссылается на путь к файлу «./App», который начинается с точки, указывающей на то, что он относится к текущему файлу, тогда как второй оператор импорта не ссылается на путь к файлу, который начинается с root проекта, начинающегося с 'src /'.
VS Код не имеет проблем с первым импортом. Я щелкаю правой кнопкой мыши на «./App», выбираю «Go to Definition» во всплывающем контекстном меню, и он открывает файл src \ components \ App \ App. js в новой вкладке по желанию. Но когда я щелкаю правой кнопкой мыши на «src / route / Routes», VS Code сообщает «Не найдено определение для Routes».
Если бы я писал код с нуля, я мог бы устранить эту проблему, просто кодируя второй импорт относительным образом ...
import Routes from '../../routes/Routes';
... но я не есть такая опция. Это огромное корпоративное приложение с тысячами исходных файлов и более чем 300 компонентами, а в типичном файле может быть около 20 операторов импорта. Когда я читаю код, почти ничего не определено полностью в одном файле, мне приходится перемещаться по сложной структуре папок, чтобы найти код, который ведет к другому коду и так далее. Нелегко вручную перемещаться в левой части окна проводника. Приложение было создано консультантами, которые все используют WebStorm, который легко может перейти к ссылочному коду, и я пытаюсь выполнить то же самое в коде VS sh. . json (https://code.visualstudio.com/docs/languages/jsconfig) и я создал следующий файл, который я поместил в папку root над sr c, содержащую sr c ...
{
"compilerOptions": {
"baseUrl": "src/"
},
"include": ["src/**/*", "./"],
"exclude": ["node_modules"]
}
... но это не сработало. Я попробовал это с или без 'include'.
В заключение, я не хочу потерять встроенную способность VS Code открывать файлы по относительному пути, но я хочу добавить возможность для этого также открыть файлы, путь к которым начинается с 'src /'.