В очень большом смешанном проекте TS / JS, используя VSCode, я получаю следующую ошибку.
Cannot find module 'shared/common/enums/httpMethod'.ts(2307)
Приложение успешно собирается, и наша pre-commit
ловушка, которая запускает eslint и тесты, не перестает работать.
Это происходит во всех .ts
файлах, которые я импортирую .ts
файлов. Я нашел пару ответов по этому вопросу, но ни один не помог.
То, что я до сих пор делал, включает в себя:
- Изменить версию рабочей области TypeScript в VSCode из нижней строки состояния в версии.
- Ссылка на файл
vscode.d.ts
из модуля node_modules с помощью этой команды
ln -s /home/work/mymodule/node_modules/vscode.d.ts /usr/share/code/resources/app/out/vs/vscode.d.ts
- Установка NPM, даже удаление node_modules и перезапуск VSCode
Вот файл .tsconfig
, который мы используем. Иногда в команде другие участники получают эту ошибку, но после npm install
и перезапуска VSCode у них все в порядке.
{
"compilerOptions": {
"baseUrl": "./src",
"jsx": "react",
// Target latest version of ECMAScript.
"target": "esnext",
// Search under node_modules for non-relative imports.
"moduleResolution": "node",
// Process & infer types from .js files.
"allowJs": true,
// Don't emit; allow Babel to transform files.
"noEmit": true,
// Enable strictest settings like strictNullChecks & noImplicitAny.
"strict": true,
// Disallow features that require cross-file information for emit.
"isolatedModules": true,
// Import non-ES modules as default imports.
"esModuleInterop": true,
"skipLibCheck": true
},
// Import custom typings
"include": ["src/shared/**/*", "./typings"]
}
Это не проблема с .tsconfig
. Я исследовал это, и у нас есть правильные настройки. Просто поместите это там, для получения дополнительной информации по этому вопросу. Если у кого-то есть такая же проблема, как у меня, пожалуйста, оставьте ответ или ссылку на него. Спасибо !!