Pregunta ¿Cómo ejecutar archivos de TypeScript desde la línea de comandos?


Estoy teniendo un tiempo sorprendentemente difícil para encontrar una respuesta a esto. Con Node.JS simple, puede ejecutar cualquier archivo js con node path/to/file.js, con CoffeeScript es coffee hello.coffee y ES6 tiene babel-node hello.js. ¿Cómo hago lo mismo con Typescript?

Mi proyecto tiene un tsconfig.json que es utilizado por Webpack / ts-loader para construir un pequeño y agradable paquete para el navegador. Sin embargo, tengo una necesidad de ejecutar un paso de compilación desde la consola antes, que usaría algunos de los .ts archivos utilizados en el proyecto para generar un esquema, pero parece que no puedo ejecutar un solo archivo de Typescript sin compilar todo el proyecto.


74
2017-11-05 02:54


origen


Respuestas:


¿Cómo hago lo mismo con Typescript?

Puedes irte tsc corriendo en modo de reloj usando tsc -w -p . y generará .js archivos para ti en vivo, para que puedas correr node foo.js como normal

Nodo TS

Hay ts-node: https://github.com/TypeStrong/ts-node eso hará todo esto por ti


106
2017-11-05 03:16



Tenemos los siguientes pasos

  1. Primero necesitas instalar mecanografiado

    npm install -g mecanografiado

2. Cree un archivo helloword.ts

function hello(person){
 return "Hello, " + person;
}
let user = "Aamod Tiwari";
const result = hello(user);
console.log("Result",result)

3. Abra el símbolo del sistema y escriba el siguiente comando

tsc helloward.ts

  1. De nuevo ejecuta el comando

nodo helloward.js

  1. El resultado se mostrará en la consola

8
2018-04-16 12:35



En caso de que alguien esté loco como yo y solo quiera ejecutar un script mecanografiado como si fuera un script .js, puede intentarlo. Escribí un script hacky que parece ejecutar el script .ts usando node.

#!/usr/bin/env bash

NODEPATH="$HOME/.nvm/versions/node/v8.11.3/bin" # set path to your node/tsc

export TSC="$NODEPATH/tsc"
export NODE="$NODEPATH/node"

TSCFILE=$1 # only parameter is the name of the ts file you created.

function show_usage() {
    echo "ts2node [ts file]"
    exit 0
}

if [ "$TSCFILE" == "" ]
then
    show_usage;
fi

JSFILE="$(echo $TSCFILE|cut -d"." -f 1).js"

$TSC $TSCFILE && $NODE $JSFILE

Puedes hacer esto o escribir el tuyo pero, esencialmente, crea el archivo .js y luego usa el nodo para ejecutarlo de esta manera:

# tsrun myscript.ts

Sencillo. Solo asegúrate de que tu script solo tenga un "." de lo contrario, necesitarás cambiar tu JSFILE de una manera diferente a la que he mostrado.


1
2017-07-06 22:47



Estos son algunos pasos para ejecutar el archivo de mecanografía desde el símbolo del sistema

1) Node.js debe ser instalado, si no es un requisito previo para instalarlo.

2) Debe instalarse Typescript, si no, instálelo.

3) Compile el archivo de script de tipo en el símbolo del sistema

D: \> tsc demo.ts

4) Ejecute el archivo compilado demo.js en el símbolo del sistema

5) D: \> nodo demo.js


0
2018-04-20 07:08



Puede hacerlo fácilmente desde la línea de comando del nodo. Antes que nada, crea un archivo Greeter.ts como a continuación.

class Greeter {
  greeting : string;
  constructor(message : string) {
    this.greeting = message;
  }

  greet() {
    return "Hello, " + this.greeting;
  }
}

let greeter = new Greeter("world");
console.log(greeter.greet());

Ahora, compila el archivo anterior con el comando tsc Greeter.ts que creará un archivo Greeter.js en el mismo directorio.

Ahora, puedes ejecutar el comando node Greeter.js que saldrá Hello, world


0
2017-07-10 17:50



Esta pregunta se publicó en 2015. En 2018, el nodo reconoce ambos .js y .ts. Entonces, corriendo node file.ts también correrá


-11
2018-03-06 04:16