tsc lança `TS2307: Não foi possível encontrar o módulo` para um arquivo local
Eu tenho um projeto de exemplo simples usando o TypeScript:https://github.com/unindented/ts-webpack-example
Corridatsc -p .
(comtsc
versão 1.8.10) lança o seguinte:
app/index.ts(1,21): error TS2307: Cannot find module 'components/counter'.
components/button/index.ts(2,22): error TS2307: Cannot find module 'shared/backbone_base_view'.
components/button/index.ts(3,25): error TS2307: Cannot find module 'shared/backbone_with_default_render'.
components/counter/index.ts(2,22): error TS2307: Cannot find module 'shared/backbone_base_view'.
components/counter/index.ts(3,25): error TS2307: Cannot find module 'shared/backbone_with_default_render'.
components/counter/index.ts(4,27): error TS2307: Cannot find module 'shared/backbone_with_subviews'.
components/counter/index.ts(5,20): error TS2307: Cannot find module 'components/button'.
Ele reclama de todas as importações de arquivos locais, como o seguinte:
import Counter from 'components/counter';
Se eu mudar para um caminho relativo, ele funciona, mas não quero, pois torna minha vida mais difícil ao mover arquivos:
import Counter from '../components/counter';
ovscode
codebase não usa caminhos relativos, mas tudo funciona bem para eles, então devo estar faltando algo no meu projeto:https://github.com/Microsoft/vscode/blob/0e81224179fbb8f6fda18ca7362d8500a263cfef/src/vs/languages/typescript/common/typescript.ts#L7-L14
Você pode conferir meu repositório GitHub, mas, caso ajude, aqui está otsconfi,g.json
arquivo que estou usando:
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"noImplicitAny": false,
"removeComments": false,
"preserveConstEnums": true,
"sourceMap": true,
"outDir": "dist"
},
"exclude": [
"dist",
"node_modules"
]
}
O engraçado é que, construindo o projeto através dewebpack
usandots-loader
funciona bem, então acho que é apenas um problema de configuração ...