首页 > 其他分享 >小满nestjs(第二十二章 nestjs 自定义装饰器)

小满nestjs(第二十二章 nestjs 自定义装饰器)

时间:2023-01-17 14:37:03浏览次数:59  
标签:const 自定义 小满 role nestjs SetMetadata 装饰


在Nestjs 中我们使用了大量装饰器 decorator ,所以Nestjs 也允许我们去自定义装饰器。

小满nestjs(第二十二章 nestjs 自定义装饰器)_自定义

 案例1 自定义权限装饰器

生成装饰器 

nest g d [name]
import { SetMetadata } from '@nestjs/common';

export const Role = (role: string[]) => {
console.log(role,1)
return SetMetadata('role', role);
}

小满nestjs(第二十二章 nestjs 自定义装饰器)_typescript_02

 案例2 自定义参数装饰器返回一个url

import { SetMetadata,createParamDecorator,ExecutionContext ,applyDecorators } from '@nestjs/common';
import type {Request} from 'express'


export const ReqUrl = createParamDecorator((data:string,ctx:ExecutionContext)=>{
const req = ctx.switchToHttp().getRequest<Request>()
return req.url
})

小满nestjs(第二十二章 nestjs 自定义装饰器)_javascript_03

标签:const,自定义,小满,role,nestjs,SetMetadata,装饰
From: https://blog.51cto.com/u_13463935/6017248

相关文章