express-routings
v0.2.0express-routings
Allows to create controller classes with methods as actions that handle express requests.
Installation
- Install module:
npm i express-routings
- Install
reflect-metadata
npm install reflect-metadata
- Make sure
reflect-metadata
to import beforeexpress-routings
import 'reflect-metadata'
Usage
Example of usage
Create a file
UserController.ts
import { Controller, Param, Body, Get, Post, Put, Delete } from 'express-routings'; @Controller() export class UserController { @Get('/users') getAll() { return 'This action returns all users'; } @Get('/users/:id') getOne(@Param('id') id: number) { return 'This action returns user #' + id; } @Post('/users') post(@Body() user: any) { return 'Saving user...'; } @Put('/users/:id') put(@Param('id') id: number, @Body() user: any) { return 'Updating a user...'; } @Delete('/users/:id') remove(@Param('id') id: number) { return 'Removing user...'; } }
This class will register routes specified in method decorators in express.js framework.
Create a file
app.ts
import 'reflect-metadata' import { createServer } from 'routing-controllers'; import { UserController } from './UserController'; const app = createServer({ controllers: [UserController], // we specify controllers we want to use }); // run express application on port 3000 app.listen(3000);