Skip to content

Configuracion de Node con Typescript

GreccoOliva-Franco edited this page Jun 19, 2021 · 6 revisions

Cómo configurar un proyecto Node con Typescript

Requisitos previos

Paso 1: Iniciar un proyecto npm

Tener instalado Node version 16 para arriba

mkdir node_project
cd node_project
npm init -y

Paso 2: Instalar las dependencias

npm install -D typescript

Ojo con las versiones

npm install -S express
npm install -D @types/express

Paso 3: Configurar TypeScript

tsconfig.json

{
    "compilerOptions": {
      "module": "commonjs",
      "esModuleInterop": true,
      "target": "es6",
      "noImplicitAny": false,
      "moduleResolution": "node",
      "experimentalDecorators": true,
      "emitDecoratorMetadata": true,
      "resolveJsonModule": true,
      "sourceMap": true,
      "rootDir": "./",
      "outDir": "dist"
    },
    "include": ["src"],
    "exclude": ["node_modules", "dist"],
    "types": ["node"]
  }

Paso 4: Actualizar el archivo package.json

Ahora que TypeScript y su linter están configurados, es el momento de crear un servidor Node Express.

{
  "name": "nodet_t",
  "version": "1.0.0",
  "description": "",
  "main": "dist/src/app.js",
  "scripts": {
    "start": "tsc && node dist/src/app.js",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "@types/node": "^15.12.2",
    "typescript": "^4.3.4"
  },
  "dependencies": {
    "@types/express": "^4.17.12",
    "express": "^4.17.1"
  }
}

Primero cree una carpeta src en la raíz del directorio de su proyecto:

mkdir src

A continuación cree un archivo llamado app.ts dentro:

touch src/app.ts

En este momento, la estructura de la carpeta debería tener este aspecto:

├── node_modules/
├── src/
  ├── app.ts
├── package-lock.json
├── package.json
├── tsconfig.json

Abra el archivo app.ts con el editor de texto que prefiera y pegue el siguiente fragmento de código:

import express from "express";
const app = express();
const port = 3000;

// routes
app.get("/", (req, res) => {
  res.send("Hola Scorpion con FEC ");
});

app.listen(port, () => {
  console.log(`server is listening on ${port}`);
});

El código anterior crea Node Server que escucha las solicitudes sobre el puerto 3000. Ejecute la aplicación usando el siguiente comando:

npm i

y luego ...

npm start

y chetooo

Outputserver is listening on 3000