'comando tsc no encontrado' en la compilación de mecanografiado

83

Quiero instalar mecanografiado, así que usé el siguiente comando:

npm install -g typescript 

y prueba tsc --version, pero solo muestra 'comando tsc no encontrado'. He intentado muchas formas como se sugiere en stackoverflow, github y otros sitios. pero no funciona. ¿Cómo puedo saber si mecanografiado está instalado y dónde está?

mi sistema operativo es Unix, OS X El Capitan 10.11.6, la versión del nodo es 4.4.3, la versión npm es 3.10.5

Aung Thet
fuente
1
Incluya su sistema operativo y su versión y sus versiones de Node.js y NPM en su pregunta.
cartant
5
Lo más probable es que tenga un problema con la configuración de su nodo / npm; por ejemplo, el directorio npm relevante no está en su ruta. El lugar donde se instala mecanografiado depende de su entorno, pero puede comenzar con npm list -g. O inténtelo npm config get prefix(sus paquetes normalmente estarán en el bindirectorio debajo de este). Vea también esta pregunta .
Gracias, lo tengo. Olvidé exportar la ruta del prefijo.
Aung Thet
También puede verificar mi respuesta
Zameer Ansari

Respuestas:

115

Algunos consejos en orden

  • reiniciar el terminal
  • reiniciar la máquina
  • reinstalar nodejs + luego ejecutar npm install typescript -g

Si aún no funciona, ejecute npm config get prefixpara ver dónde está colocando npm install -g los archivos (anexe bina la salida) y asegúrese de que estén en la ruta (la configuración del nodo js hace esto. Tal vez olvidó marcar esa opción).

basarat
fuente
3
Gracias lo tengo. Claro, olvidé asignar la ruta `export PATH = / prefix'sPath / bin: $ PATH 'y ( docs.npmjs.com/getting-started/fixing-npm-permissions ) también este sitio sugiere algo así. Usé un día entero para esto :).
Aung Thet
stackoverflow.com/a/46783952/495157 : esta respuesta es más informativa, especialmente si realiza desarrollo Angular / Ionic.
JGFMK
1
Tuve que desinstalar node / npm. Utilicé brew para instalar NVM y luego instalé el nodo usando nvm install nodeluego sudo npm install -g typescriptpara comenzar tsc --versiona trabajar
alex
1
Solo hice "npm install typecript -g" y funcionó perfectamente
pixparker
La actualización de la versión de nodo me ayudó.
JavaDeveloper
29

Tuve que hacer esto:

npx tsc app.ts
Oscar Jovanny
fuente
2
Esto me ayudó, pero para aclarar, tenía que hacerlo npm install --save-dev typescript && npx tsc --version && npx tsc <filename>. Esto instaló tsc, lo probó con --versionéxito y compiló correctamente mi tsarchivo en un jsarchivo.
Jason Fry
Esto funcionó, pero acabo de usar npx tsc. Agregar tsc probablemente resuelve la necesidad de usar npx.
foureyedraven
8

Si su comando TSC no se encuentra en MacOS después de la instalación adecuada de TypeScript (usando el siguiente comando : $ sudo npm install -g typescript, asegúrese de que la /binruta del nodo se agregue a la PATHvariable en .bash_profile.

Abrir .bash_profileusando la terminal: $ open ~ / .bash_profile;

Edite / Verifique el perfil de bash para incluir la siguiente línea ( usando su editor de texto favorito ):

export PATH="$PATH:"/usr/local/lib/node_modules/node/bin"";

Cargue el último perfil de bash usando la terminal source ~/.bash_profile:;

Por último, pruebe el comando: $ tsc --version.

Pandi
fuente
7

todos están jugando con las instalaciones globales y los archivos de ruta. Un pequeño error podría dañar todos los proyectos que haya escrito, y pasará el resto de la noche tratando de que un console.log ('hola') vuelva a funcionar: - =.

Si ha ejecutado npm i mecanografiado --save-dev en su proyecto, intente ejecutar:

npx tsc

y vea si funciona antes de meterse con cosas globales (a menos que sepa realmente lo que está haciendo)

salud

Por Høyer
fuente
5

Solución fácil para Mac que encontré. Simplemente ejecute estos comandos:

sudo npm install -g concurrently
sudo npm install -g lite-server
sudo npm install -g typescript

Nada funcionó excepto esto para mí.

Teja
fuente
3

Sé que esta es una pregunta antigua, pero tuve el mismo problema en Ubuntu 19.10 LTS.

Para resolver esto, ejecuté el siguiente comando:

$ sudo apt install node-typescript

Después de eso, pude usar tsc.

Espero que ayude :)

Rodrigo Marques
fuente
3

Esta respuesta es específica para iTermV2 en MAC

  1. En primer lugar, necesitaba instalar como sudo(administrador) durante la instalación de NPM

    sudo npm install -g mecanografiado

  2. NPM instala las bibliotecas en la /usr/local/Cellar/node/<your latest version>/lib/node_modules/typescriptcarpeta y los enlaces simbólicos en/usr/local/Cellar/node/<your latest version>/bin/tsc

por lo tanto, fui ~ / .zshrc (.bashrc, si usa bash) y lo agregué /usr/local/Cellar/node/<your latest version>/bina $ PATH.

  1. recargar el perfil de shell a través de source ~/.zshrc(.bashrc en su caso)
sjs
fuente
Es bueno saberlo. Pero, ¿quién se ocupa de estos enlaces a partir de ahora?
Chris Pillen
3

Después de encontrar todas las soluciones para este pequeño problema solo para macOS.
Finalmente, conseguí que mi TSC funcionara en mi MacBook pro.

Esta podría ser la mejor solución que encontré.

Para todos los usuarios de macOS, en lugar de instalar mecanografiado usando npm, puede instalar mecanografiado usando homebrew.

-> brew install typescript

Consulte la captura de pantalla adjunta como referencia.

Gracias.

ingrese la descripción de la imagen aquí

Marjun
fuente
2

La única solución que funcionó para mí fue poner npx tsc -v o para la compilación npx tsc salida.ts

"salida.ts" es el nombre del archivo

juan.pedro.v
fuente
0

Solución no administrativa

No tengo privilegios de administrador ya que esta máquina fue emitida por mi trabajo.

  • obtener la ruta donde se instalan los módulos de nodo y copiar al portapapeles
    • npm config get prefix | clip
    • no tienes clip? simplemente copie la salida denpm config get prefix
  • agregar una ruta copiada a las variables de entorno
    • mi método preferido (Windows)
    • (Ctrl + R), pegar rundll32 sysdm.cpl,EditEnvironmentVariables
    • en Variables de usuario, haga doble clic en Ruta > Nuevo > Pegar ruta copiada
codeherk
fuente
0

Ninguna de las respuestas anteriores resuelve mi problema. El hecho es que mi proyecto no tenía instalado el tipo de script. Pero localmente había corrido npm install -g typescript. Entonces no noté que la dependencia del nodo mecanografiado no estaba en mi paquete json.

Cuando lo empujé al lado del servidor y lo ejecuté npm install, npx tscobtengo un tsc no encontrado. De hecho, el servidor remoto no tenía instalado el mecanografiado. Eso estaba oculto debido a mi instalación de mecanografiado global local.

Romain TAILLANDIER
fuente
0
  1. Comprueba tu npmversión

  2. Si no está instalado correctamente, instálelo primero

  3. ejecutar este comando npm install typescript -g

  4. ahora tsc <file_name>.ts

  5. Creará un .jsarchivo correspondiente . p.ej<file_name>.js

  6. ahora intenta node <file_name>.js

Akash Dutta
fuente
-1

Para ventanas:

Agregue la ruta usando el comando como se muestra a continuación en el símbolo del sistema:
ruta =% ruta%; C: \ Users \\ npm

Como en mi caso, la ruta anterior no se registró para el comando.

% userprofile% en ejecutar Windows, le dará la ruta a C: \ users \

Durgesh
fuente
-1

Esto funciona perfectamente en Mac. Probado en macOS High Sierra

sudo npm install -g concurrently
sudo npm install -g lite-server
sudo npm install -g typescript
tsc --init

Esto genera el archivo tsconfig.json.

alexeis
fuente
concurrentlyy lite-servertienen poco o nada que ver con poder ejecutar el tsccomando. No recomiende instalar dependencias innecesarias.
andras
-1

Resolví esto en mi máquina simplemente ejecutándome sudo npm installen el directorio en el que recibía el error.

mbspark
fuente
No debería verse obligado a ejecutar la sudoinstalación de paquetes. Entonces deberías reinstalar npm. Ver más No sudo npm
GLindqvist