tsc jette `TS2307: Impossible de trouver le module` pour un fichier local

J'ai un exemple simple projet à l'aide de la Machine: https://github.com/unindented/ts-webpack-example

De course tsc -p . (avec tsc version 1.8.10) jette les suivantes:

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'.

Il se plaint de toutes les importations de fichiers locaux, comme suit:

import Counter from 'components/counter';

Si je l'ai changer pour un chemin relatif, il fonctionne, mais je ne veux pas, il me rend la vie plus difficile lors du déplacement de fichiers:

import Counter from '../components/counter';

La vscode codebase ne pas utiliser des chemins relatifs, mais tout fonctionne très bien pour eux, donc je dois être en manque de quelque chose dans mon projet: https://github.com/Microsoft/vscode/blob/0e81224179fbb8f6fda18ca7362d8500a263cfef/src/vs/languages/typescript/common/typescript.ts#L7-L14

Vous pouvez consulter mon dépôt GitHub, mais dans le cas où il aide voici le tsconfig.json fichier que j'utilise:

{
  "compilerOptions": {
    "target": "es5",
    "module": "commonjs",
    "noImplicitAny": false,
    "removeComments": false,
    "preserveConstEnums": true,
    "sourceMap": true,
    "outDir": "dist"
  },
  "exclude": [
    "dist",
    "node_modules"
  ]
}

La chose drôle est, la construction du projet par le biais de webpack à l'aide de ts-loader fonctionne très bien, donc je suppose que c'est juste un problème de configuration...

OriginalL'auteur Daniel Perez Alvarez | 2016-05-31