Je suis confronté au problème:
Mon projet est construit sur Angular4 avec TypeScript, ainsi que sur les tests e2e avec rapporteur et karma.
Travis-ci a cette erreur:
[03:34:54] E/launcher - Error: TSError: ⨯ Unable to compile TypeScript
Cannot find type definition file for 'jasmine'. (2688)
Cannot find type definition file for 'node'. (2688)
e2e/app.e2e-spec.ts (1,32): Cannot find module './app.po'. (2307)
e2e/app.e2e-spec.ts (4,1): Cannot find name 'describe'. (2304)
e2e/app.e2e-spec.ts (7,3): Cannot find name 'beforeEach'. (2304)
e2e/app.e2e-spec.ts (11,3): Cannot find name 'it'. (2304)
e2e/app.e2e-spec.ts (13,5): Cannot find name 'expect'. (2304)
The command "ng e2e" exited with 4.
Mon tsconfig.json:
{
"compileOnSave": false,
"compilerOptions": {
"outDir": "./dist/out-tsc",
"baseUrl": ".",
"paths": {
"*": ["./node_modules/*", "*"]
},
"sourceMap": true,
"declaration": false,
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"target": "es5",
"types": [ "node", "jasmine" ],
"typeRoots": [
"./node_modules/@types"
],
"lib": [
"es2016",
"dom"
]
}
}
Mon tsconfig.spec.json:
{
"compilerOptions": {
"sourceMap": true,
"declaration": false,
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"lib": [
"es2016",
"dom"
],
"outDir": "../out-tsc/spec",
"module": "commonjs",
"target": "es5",
"baseUrl": "",
"types": [
"jasmine",
"node"
],
"typeRoots": [
"../node_modules/@types"
]
},
"files": [
"test.ts"
],
"include": [
"**/*.spec.ts"
]
}
Node v6.10.3
npm v3.10.10
Aidez-moi, s'il vous plaît.
J'ai rencontré le même problème. D'abord, je supprime ts-node et TypeScript de package.json. puis,
npm install ts-node --save-dev
npm install TypeScript -g
npm install TypeScript --save-dev
Je suis venu ici à la recherche d'une solution à une erreur similaire lorsque j'ai mis à jour ma version TypeScript. Mine n'était pas un nouveau projet. J'exécute un projet angular2 avec "@angular/cli": "1.2.0"
. J'ai mis à jour ma version TypeScript de 2.0.3
à 2.7.2
, puis des problèmes similaires à ceux décrits ci-dessous se présentaient lors de l'exécution de ng e2e
.
Erreur: TSError: ⨯ Impossible de compiler TypeScript Impossible de trouver le fichier de définition de type pour 'core-js'. (2688) Impossible de trouver le fichier de définition de type pour 'grecaptcha'. (2688) Impossible de trouver le fichier de définition de type pour 'jasmine'. (2688) Impossible de trouver le fichier de définition de type pour 'moment-fuseau horaire'. (2688) Impossible de trouver le fichier de définition de type pour 'noeud'. (2688) Impossible de trouver le fichier de définition de type pour 'q'. (2688)
Les solutions proposées dans cet article n'ont pas fonctionné pour moi.
Je l'ai corrigé en mettant à jour ts-node
à 5.0.1
. Les versions supérieures à cela donnaient des erreurs comme celle ci-dessous lors de l'exécution de ng e2e
même si experimentalDecorators
était défini sur true
dans tsconfig.json
:
erreur TS1219: la prise en charge expérimentale des décorateurs est une fonctionnalité susceptible d'être modifiée dans une version ultérieure. Définissez l'option 'experimentalDecorators' pour supprimer cet avertissement.
Outre le changement ci-dessus, j'ai également changé quelques lignes dans protractor.conf.js
Modifié:
beforeLaunch: function () {
require('ts-node').register({
project: 'e2e'
});
},
à
beforeLaunch: function () {
require('ts-node/register')
}
Ceci est pour les personnes qui peuvent trébucher dans ce post et la solution proposée ne fonctionne pas pour eux.
si seulement "npm install -g TypeScript" ne fonctionne pas.
essayez de faire "tsc" dans le dossier du projet
Voici ma solution à ce problème: -Lancez cette commande
npm install -save-dev [email protected]
npm WARN [email protected] No repository field.
npm WARN [email protected] No license field.
+ [email protected]
updated 1 package and audited 657 packages in 2.539s
found 0 vulnerabilities