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

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

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


b2098d62ace3491888c373ad1496259e.png


案例1 自定义权限装饰器


生成装饰器


nest g d [name]


import { SetMetadata } from '@nestjs/common';
export const Role = (role: string[]) => {
    console.log(role,1)
    return SetMetadata('role', role);
}

52e259dee68a42e7ac3e70b4b24c81e7.png


案例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
})


4e8b67be7037456a80af3fd5617f37a7.png

目录
相关文章
|
Linux 对象存储 Windows
MinIO 客户端安装与使用教程
MinIO 客户端安装与使用教程
1432 0
|
6月前
|
存储 安全 数据处理
从GDPR“天价罚单”到数据安全法“安全评估”:代购系统的合规“避雷指南”
代购系统面临欧盟GDPR与中国《数据安全法》双重合规挑战。本文从法律框架、合规要点、技术工具与操作流程四方面,解析跨境数据处理的应对策略,助力企业实现安全合规的数据跨境流动。
|
6月前
|
人工智能 前端开发 JavaScript
用 通义灵码打造创意 Loading 动画生成器:只需三个词,就能玩出花来!
本文介绍了如何利用“通义灵码”打造一个创意 Loading 动画生成器。作者通过输入“科技感、电波、液体”三个关键词,借助 AI 工具自动生成酷炫的 CSS 动画效果,无需手动编写复杂代码。整个过程高效便捷,只需描述风格关键词,即可生成多种加载动画,并可封装为组件直接使用,极大地提升了开发效率与创意表达。
|
7月前
|
安全 Go 调度
Go同步原语与数据竞争:原子操作(atomic)
本文介绍了Go语言中`sync/atomic`包的使用,帮助避免多goroutine并发操作时的数据竞争问题。原子操作是一种不可中断的操作,确保变量读写的安全性。文章详细说明了常用函数如`Load`、`Store`、`Add`和`CompareAndSwap`的功能与应用场景,并通过并发计数器示例展示了其实现方式。此外,对比了原子操作与锁的优缺点,强调原子操作适用于简单变量的高效同步,而不适合复杂数据结构。最后提醒开发者注意使用场景限制,合理选择同步工具以优化性能。
|
Kubernetes API Go
企业项目迁移go-zero实战(一)
企业项目迁移go-zero实战(一)
|
Web App开发 移动开发 编解码
浏览器播放RTSP视频流几种解决方案
Streamedian 提供了一种“html5_rtsp_player + websock_rtsp_proxy”的技术方案,可以通过html5的video标签直接播放RTSP的视频流。
2341 0
|
前端开发 API 开发者
乱花迷人眼 - 一文彻底看懂 package.json 中的各种 dependencies
package.json 中存在各种各样的依赖定义:dependencies、devDependencies、peerDependencies、optionalDependencies、bundleDependencies,很容易让初学的开发者晕头,到底有什么区别。
|
机器学习/深度学习 自然语言处理 算法
如何利用机器学习算法提高分类准确率
【2月更文挑战第7天】机器学习在现代科技中扮演着重要的角色。分类是其中一种基本的机器学习任务,而分类准确率是衡量分类模型好坏的重要指标。本文将介绍如何利用机器学习算法来提高分类准确率。
379 0
|
JSON Rust IDE
全网最全的Rust学习资源
学习Rust过程中整理了一些学习资料分享一下。
961 1