Questo è qualcosa che alcuni giorni fa funzionava correttamente, quindi non sono sicuro di cosa sia cambiato da allora (oltre all'aggiornamento a ASP.NET Core RC2 e all'installazione di alcune estensioni per VS2015 come ricordo)Errori di compilazione di dattiloscritto non visualizzati in VS2015 utilizzando dattilografo gulp
il problema è che quando si esegue da VS2015 un compito Gulp per compilare i miei file tipografico, se si verifica un errore si vede ad esempio:
[10:02:54] Compiling typescript into javascript
[10:02:56] TypeScript: 1 semantic error
[10:02:56] TypeScript: emit succeeded (with errors)
[10:02:56] Finished 'compile' after 2.47 s
Process terminated with code 0.
senza alcuna descrizione dell'errore .
in CMD:
$ tsc -v
Version 1.8.10
Nella console VS2015 Package Manager:
PM> tsc -v
Version 1.8.10
quindi penso che VS2015 è almeno utilizzando lo stesso compilatore dattiloscritto in PATH e che non dovrebbe essere un problema. Anche questa è l'ultima versione ma ho provato con 1.7 e succede la stessa cosa.
Il mio compito sorso:
gulp.task('compile', function() {
log('Compiling typescript into javascript');
return gulp
.src(config.allts)
.pipe($.sourcemaps.init())
.pipe($.typescript({
noImplicitAny: true,
target: 'ES5'
}))
.pipe($.sourcemaps.write('.'))
.pipe(gulp.dest(config.compileFolder));
});
e sto usando:
"gulp-typescript": "2.10.0"
anche se ho provato con l'ultimo:
"gulp-typescript": "2.13.4"
senza fortuna.
Come ho capito, non ho bisogno di un tsconfig.json alla radice del mio progetto poiché sto usando gulp-typescript
e sto passando già il compilerOptions nel task gulp stesso, quindi ho eliminato il file tsconfig.json che avevo perché non sembra essere usato.
Se rimuovo tutte le compilerOptions dal mio compito sorso:
gulp.task('compile', function() {
log('Compiling typescript into javascript');
return gulp
.src(config.allts)
.pipe($.sourcemaps.init())
.pipe($.typescript({
//removed
}))
.pipe($.sourcemaps.write('.'))
.pipe(gulp.dest(config.compileFolder));
});
ho più errori semantici anche senza descrizione.
[10:12:57] Compiling typescript into javascript
[10:13:00] TypeScript: 184 semantic errors
[10:13:00] TypeScript: emit succeeded (with errors)
[10:13:01] Finished 'compile' after 3.83 s
Process terminated with code 0.
quindi le opzioni sono sicuramente in uso.
E se nella mia CMD vado alla cartella in cui ho un dattiloscritto e provo a compilare con:
C:/>Sample/app> tsc mytestfile.ts
posso correttamente vedere tutte le errori di compilazione dattiloscritto.
Qualche idea di cosa potrebbe essere sbagliato nel mio VS2015 o nel mio dattiloscritto?
UPDATE: Ho provato con gulp-tsc invece gulp-dattiloscritto e funziona bene. Quindi il problema deve essere con gulp-dattiloscritto
gulp.task('compile', function() {
log('Compiling typescript into javascript');
return gulp
.src(config.allts)
.pipe($.sourcemaps.init())
.pipe($.tsc({
noImplicitAny: true,
target: 'ES5'
}))
.pipe($.sourcemaps.write('.'))
.pipe(gulp.dest(config.compileFolder));
});
Ho lo stesso problema con VS2015 + gulp-typecript sulla macchina del mio compagno di squadra, il suo terminale mostra gli errori semantici "N" criptici. La configurazione del progetto è identica, ma sul mio terminale posso vedere le descrizioni esatte degli errori. – Cubius
La mia soluzione attuale è di passare a "Build + IntelliSense" nella finestra "Elenco errori" di VS e utilizzare le informazioni lì per correggere gli errori. – user764754