2015-09-29 1 views
1

Je viens de commencer à travailler sur un projet avec un peu de code de type, et j'essaye de compiler les fichiers .ts en fichiers .js à partir de Linux Mint, mais ça ne fonctionne pas comme je le pensais.Pourquoi la commande "tsc file.ts" ne donne aucune sortie et ne produit pas de fichier js?

Il existe un Makefile, mais cela ne fonctionne pas. L'exécution make renvoie une erreur:

tsc --noImplicitAny --noEmitOnError --out client/welcome.js client/welcome.ts 
make: *** [client/welcome.js] Error 1 

J'ai aussi essayé de créer un greeter.ts fichier dactylographiée exemple (selon this official tutorial) contenant:

function greeter(person) { 
    return "Hello, " + person; 
} 
var user = "Jane User"; 
document.body.innerHTML = greeter(user); 

et essayé de compiler les ts fichier JavaScript avec la commande (selon le même tutoriel) tsc greeter.ts cependant la commande se termine sans aucune sortie, et aucun fichier .js n'a été créé.

Je n'ai jamais travaillé avec du manuscrit du tout, et bien que j'aie utilisé le Makefile avant que je n'en connaisse pas grand chose, j'espère que c'est quelque chose de vraiment évident!

Répondre

2

--noEmitOnError

Cela signifie que s'il y a une erreur détectée pas js sera généré. Je recommande fortement de ne pas utiliser cette option (Change un avantage majeur de why typescript)

Plus

Vérifiez votre version tsc. Le code que vous avez fourni fonctionne bien avec les 1.6:

enter image description here

Mise à jour

La commande --version devrait fonctionner à tout le moins. Voir ci-dessous:

enter image description here

+0

Merci! Je pense que cela aide un peu. Une idée pour vérifier la version? 'tsc --version' ne fait rien, et il n'y a pas d'entrée manuelle linux pour tsc il semble. –

+0

'which tsc' devrait vous indiquer l'emplacement de' tsc' – basarat

+0

J'ai trouvé une ligne contenant 'ts.version =" 1.6.2 "' dans la ligne 29357 du fichier/usr/local/lib/node_modules/typescript/lib/tsc.js alors peut-être que cela signifie que j'ai la version 1.6.2 ... aurait été plus facile si c'était en haut du fichier! –