0.1.1 • Published 4 years ago

@sen.he/express-decorate v0.1.1

Weekly downloads
3
License
MIT
Repository
github
Last release
4 years ago

install

npm install @sen.he/express-decorate

Example

/controller/test.ts

import { GET, Path, POST, DELETE, PUT, SuccessResponse, ErrorResponse } from "@sen.he/express-decorate";
import { Request, Response, NextFunction } from "express";

@Path("/users")
export default class Test {

  @GET("/index", [(req: Request, res: Response, next: NextFunction) => {
    console.log("index middware");
    next();
  }])
  public index(req: Request, res: Response, next: NextFunction) {
    next(new SuccessResponse({ msg: "Ok" }, 2001));
  }

  @DELETE("/name")
  @PUT("/update")
  @POST("/:id")
  @GET("/:id")
  public getUser(req: Request, res: Response, next: NextFunction) {
    next(new ErrorResponse("not found", 404));
  }

  @POST("/")
  public addUser(req: Request, res: Response, next: NextFunction) {
    next(new SuccessResponse({ id: req.body.id }));
  }

  @PUT("/:id")
  public updateUser(req: Request, res: Response, next: NextFunction) {
    next(new SuccessResponse({ id: req.params["id"] }));
  }

  @DELETE("/:id")
  public deleteUser(req: Request, res: Response, next: NextFunction) {
    next(new SuccessResponse({ id: req.params["id"] }));
  }
}

/route/v2.ts

import express from "express";

import { registerRoutes } from "@sen.he/express-decorate";

import Test from "../controller/test";

const router: any = express.Router();

// GET /v2/users/index
registerRoutes(router, [Test], "/v2", [(req: any, res: any, next: any) => {
  console.log("router middware");
  next();
}]);

export default router;
0.1.1

4 years ago

0.0.6

5 years ago

0.0.5

5 years ago

0.0.4

5 years ago

0.0.3

5 years ago

0.0.2

5 years ago

0.0.1

5 years ago