tsc lanza `TS2307: No se puede encontrar el módulo` para un archivo local
Tengo un proyecto de ejemplo simple usando TypeScript:https://github.com/unindented/ts-webpack-example
Corriendotsc -p .
(contsc
versión 1.8.10) arroja lo siguiente:
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'.
Se queja de todas las importaciones de archivos locales, como las siguientes:
import Counter from 'components/counter';
Si lo cambio a una ruta relativa, funciona, pero no quiero hacerlo, ya que me dificulta la vida al mover archivos:
import Counter from '../components/counter';
losvscode
codebase no usa rutas relativas, pero todo funciona bien para ellos, por lo que me falta algo en mi proyecto:https://github.com/Microsoft/vscode/blob/0e81224179fbb8f6fda18ca7362d8500a263cfef/src/vs/languages/typescript/common/typescript.ts#L7-L14
Puede consultar mi repositorio de GitHub, pero en caso de que sea útil, aquí está eltsconfi,g.json
archivo que estoy usando:
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"noImplicitAny": false,
"removeComments": false,
"preserveConstEnums": true,
"sourceMap": true,
"outDir": "dist"
},
"exclude": [
"dist",
"node_modules"
]
}
Lo curioso es construir el proyecto a través dewebpack
utilizandots-loader
funciona bien, así que supongo que es solo un problema de configuración ...