Felhasználói eszközök

Eszközök a webhelyen


oktatas:web:back-end_framework:express:typescript_kontrollerrel

< Express

Express - TypeScript kontrollerrel

Dolgozók

Előkészítés

package.json
{
  "name": "app01",
  "version": "1.0.0",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "dev":"ts-node-dev --respawn src/index.ts",
    "start": "node app",
    "build": "tsc"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "description": "",
  "dependencies": {
    "express": "^4.21.2"
  },
  "devDependencies": {
    "@types/express": "^5.0.0",
    "@types/node": "^22.10.2",
    "ts-node-dev": "^2.0.0",
    "typescript": "^5.7.2"
  }
}

TypeScript fájlok

src/index.ts
import express from 'express';
import router from './routes/api';
 
const app = express();
const PORT = 8000;
 
app.use(express.json());
app.use('/api', router);
 
app.listen(PORT, () => {
  console.log(`Server is running on http://localhost:${PORT}`);
})

Importálnunk kell a kontrollert, amit az útvonalaknál használunk fel.

src/routes/api.ts
import { Router } from 'express';
import  EmpController  from '../controllers/empController';
 
const router = Router();
 
router.get('/employees', EmpController.index);
router.post('/employees', EmpController.store);
 
export default router;

Ebben a példában kontrollert objektumként fogjuk létrehozni.

src/controllers/empController.ts
import { Request, Response } from "express"
 
const EmpController = {
 
  index: (req : Request, res : Response) => {
    res.json({
      employees : []
    })
  },
  store: (req : Request, res : Response) => {
    res.json({
      name: req.body.name
    })
  }
}
 
export default EmpController
oktatas/web/back-end_framework/express/typescript_kontrollerrel.txt · Utolsó módosítás: 2024/12/28 10:26 szerkesztette: admin