Skip to content

Commit 8c737ef

Browse files
committed
Improve bind routes on typescript-backend
1 parent df7e4b1 commit 8c737ef

File tree

4 files changed

+18
-34
lines changed

4 files changed

+18
-34
lines changed

backend-javascript/src/modules/city/city.controller.js

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,8 @@ import { validateItem } from './city.schema.js';
55
class Controller {
66
constructor(service) {
77
this.service = service;
8-
// this.getItems = this.getItems.bind(this);
9-
// this.getItemById = this.getItemById.bind(this);
10-
// this.createItem = this.createItem.bind(this);
11-
// this.updateItem = this.updateItem.bind(this);
12-
// this.deleteItem = this.deleteItem.bind(this);
138
}
149

15-
// async getItems(req, res, next) {
1610
getItems = async (req, res, next) => {
1711
try {
1812
const result = await this.service.getItems(req.query);

backend-javascript/src/modules/continent/continent.controller.js

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,9 @@ import { validateItem } from './continent.schema.js';
55
class Controller {
66
constructor(service) {
77
this.service = service;
8-
this.getItems = this.getItems.bind(this);
9-
this.getItemById = this.getItemById.bind(this);
10-
this.createItem = this.createItem.bind(this);
11-
this.updateItem = this.updateItem.bind(this);
12-
this.deleteItem = this.deleteItem.bind(this);
138
}
149

15-
async getItems(req, res, next) {
10+
getItems = async (req, res, next) => {
1611
try {
1712
const result = await this.service.getItems(req.query);
1813
res.locals = { data: result, statusCode: HTTP_STATUS.OK };
@@ -24,7 +19,7 @@ class Controller {
2419
}
2520
}
2621

27-
async getItemById(req, res, next) {
22+
getItemById = async (req, res, next) => {
2823
try {
2924
const result = await this.service.getItemById(parseInt(req.params.id));
3025
res.locals = { data: result, statusCode: HTTP_STATUS.OK };
@@ -48,7 +43,7 @@ class Controller {
4843
}
4944
}
5045

51-
async createItem(req, res, next) {
46+
createItem = async (req, res, next) => {
5247
try {
5348
validateItem(req.body);
5449
const result = await this.service.createItem(req.body);
@@ -67,7 +62,7 @@ class Controller {
6762
}
6863
}
6964

70-
async updateItem(req, res, next) {
65+
updateItem = async (req, res, next) => {
7166
try {
7267
validateItem(req.body);
7368
const result = await this.service.updateItem(parseInt(req.params.id), req.body);
@@ -86,7 +81,7 @@ class Controller {
8681
}
8782
}
8883

89-
async deleteItem(req, res, next) {
84+
deleteItem = async (req, res, next) => {
9085
try {
9186
const result = await this.service.deleteItem(parseInt(req.params.id));
9287
res.locals = { data: result, statusCode: HTTP_STATUS.OK };

backend-typescript/src/modules/city/city.controller.ts

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,10 @@ export default class Controller {
1010

1111
constructor(service: Service) {
1212
this.service = service;
13-
14-
this.getItems = this.getItems.bind(this);
15-
this.getItemById = this.getItemById.bind(this);
16-
this.createItem = this.createItem.bind(this);
17-
this.updateItem = this.updateItem.bind(this);
18-
this.deleteItem = this.deleteItem.bind(this);
1913
}
2014

21-
async getItems(req: Request, res: Response, next: NextFunction): Promise<void> {
15+
16+
getItems = async (req: Request, res: Response, next: NextFunction): Promise<void> => {
2217
try {
2318
const result = await this.service.getItems(req.query);
2419
res.locals = { data: result, statusCode: HTTP_STATUS.OK };
@@ -29,7 +24,7 @@ export default class Controller {
2924
}
3025
}
3126

32-
async getItemById(req: Request, res: Response, next: NextFunction): Promise<void> {
27+
getItemById = async (req: Request, res: Response, next: NextFunction): Promise<void> => {
3328
try {
3429
const id = parseInt(req.params.id, 10);
3530
const result = await this.service.getItemById(id);
@@ -55,7 +50,7 @@ export default class Controller {
5550
}
5651
}
5752

58-
async createItem(req: Request, res: Response, next: NextFunction): Promise<void> {
53+
createItem = async (req: Request, res: Response, next: NextFunction): Promise<void> => {
5954
try {
6055
validateItem(req.body);
6156
const result = await this.service.createItem(req.body as City);
@@ -76,7 +71,7 @@ export default class Controller {
7671
}
7772
}
7873

79-
async updateItem(req: Request, res: Response, next: NextFunction): Promise<void> {
74+
updateItem = async (req: Request, res: Response, next: NextFunction): Promise<void> => {
8075
try {
8176
validateItem(req.body);
8277
const id = parseInt(req.params.id, 10);
@@ -96,7 +91,7 @@ export default class Controller {
9691
}
9792
}
9893

99-
async deleteItem(req: Request, res: Response, next: NextFunction): Promise<void> {
94+
deleteItem = async (req: Request, res: Response, next: NextFunction): Promise<void> => {
10095
try {
10196
const id = parseInt(req.params.id, 10);
10297
const result = await this.service.deleteItem(id);

backend-typescript/src/modules/city/city.routes.ts

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,15 @@ const controller = new Controller(service);
1616
const admin = permissionHandler(['admin']);
1717
const editor = permissionHandler(['admin', 'editor']);
1818

19-
router.get('/', controller.getItems.bind(controller));
19+
router.get('/', controller.getItems);
2020

21-
router.get('/authorized', editor, controller.getItems.bind(controller));
22-
router.get('/denied', admin, controller.getItems.bind(controller));
21+
router.get('/authorized', editor, controller.getItems);
22+
router.get('/denied', admin, controller.getItems);
2323

24-
router.post('/', editor, controller.createItem.bind(controller));
25-
router.get('/:id', controller.getItemById.bind(controller));
26-
router.put('/:id', editor, controller.updateItem.bind(controller));
27-
router.delete('/:id', admin, controller.deleteItem.bind(controller));
24+
router.post('/', editor, controller.createItem);
25+
router.get('/:id', controller.getItemById);
26+
router.put('/:id', editor, controller.updateItem);
27+
router.delete('/:id', admin, controller.deleteItem);
2828

2929
export default router;
3030

0 commit comments

Comments
 (0)