首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏Node.js开发

    class-transformer的使用

    上篇文章介绍了如何使用class-validator验证数据,接下来我们接着聊class-transformer的使用。 class-transformer直接翻译的意思就是类的转换,其实这里转换的不是类,而是对象,目的是将字面量对象转化为相应的类生成的对象,然后就可以使用class-validator验证了。 class-transformer本质上实现字面量对象plain object和类实例对象instance of class之间的转换,看如下代码:首先我们来区分一下plain(literal) object => {   const realUsers = plainToClass(Use, user);   // now user is an instance of User class });以上便是class-transformer

    1.7K10编辑于 2024-04-22
  • 来自专栏Node.js开发

    nestjs中如何使用class-validator和class-transformer

    前面两篇文章分别介绍了class-validator和class-transformer的使用,接着聊一下如何在nestjs中使用这两个包。 首先我们安装两个需要的依赖包:class-transformer和class-validator。 npm install class-validator class-transformer -S然后在xxxx.dto.ts文件中添加验证, 完善错误信息提示:import { IsNotEmpty, 函数进行验证,validate 函数同时会对 dto 实例进行相应处理(比如,设置了 whitelist, 会删除没有被 class-Validator 装饰器装饰的属性) 将这个 dto 实例再次通过 class-transformer 以上便是nestjs中如何使用class-validator和class-transformer,希望对你有所帮助。

    1.8K10编辑于 2024-04-22
  • 来自专栏鸿蒙开发笔记

    HarmonyOS 开发实践 —— 基于class-transformer的对象与JSON相互转换

    );  log("JSON转对象后输出情况");  //输出class中的方法  log(user.getName());  log(user.isAdult() + "");}实现效果:在项目中使用class-transformer 例子上面已经说明了class-transformer的最简单用法,现在说一个示例如何在项目中使用。 '/user')findUser() {  const user = new User('coder', '12345', 18);  return user;}可以发现立马就报错了:所以我们需要使用class-transformer 总结使用三方库class-transformer搭配JSON的JSON.parse,可以满足类似gson/fastjson绝大部分的需求,更多用法可以参考 https://github.com/typestack /class-transformer 文档。

    84510编辑于 2024-12-10
  • 来自专栏鸿蒙开发笔记

    纯血鸿蒙APP实战开发——Navigation页面跳转对象传递案例

    实现过程中使用了第三方插件class-transformer,传递对象经过该插件的plainToClass方法转换后可以直接调用对象的方法,效果图预览使用说明从首页进入本页面时,会传递一个类对象UserBookingInfo 实现思路在oh-package.json5中添加第三方插件class-transformer的依赖 "dependencies": { "class-transformer": "^0.5.1 " }在使用第三方插件class-transformer的页面导入class-transformer库。 import { plainToClass } from "class-transformer";定义要传递的类 // 定义一个用户类 export class UserBookingInfo / 转化成普通对象 let userBookingTmp: UserBookingInfo = JSON.parse(bookingString); // TODO:知识点:通过调用第三方插件class-transformer

    43120编辑于 2025-01-23
  • 来自专栏Node.js开发

    class-validator的使用

    此时我们需要另外一个库class-transformerclass-transformer这个库的作用就是将对象转化为类对象,在转化过程中可以做一些过滤约束等等操作。 我们下片文章来讲解class-transformer的使用。

    64610编辑于 2024-04-19
  • 来自专栏CRPER折腾记

    NestJS 7.x 折腾记: (5) 管道,一个好玩的东西!比如入参校验!

    其实官方教程写的挺好了, 局部管道和全局管道都写到了, 这里我们以更具通用性的入参全局管道做例子, 尽量写的更贴近业务和更为粗俗的解释吧~ 安装 # class-validator: 提供非常丰富的类型装饰器 # class-transformer : 可以把常规数据快速转成类~ # https://www.npmjs.com/package/class-validator # https://www.npmjs.com/package/class-transformer yarn add class-validator class-transformer 封装入参拦截管道 Usage: nest <command> [options] Options: -v, PipeTransform, } from '@nestjs/common'; // plainToClass 会把一个普通的js对象转换成指定类的实例 import { plainToClass } from 'class-transformer

    1.4K30编辑于 2022-03-08
  • 来自专栏神奇的程序员的专栏

    Nest集成Swagger并部署至YAPI

    node_modules/@nestjs/mapped-types/dist/type-helpers.utils.js 69:27-63 Module not found: Error: Can't resolve 'class-transformer 经过一番查找后,在mapped-types仓库的Issues[6]中找到了答案,需要在webpack.config.js中的lazyImports中加入class-transformer/storage nestjs/websockets/socket-module", "cache-manager", "class-validator", "class-transformer ", "class-transformer/storage" ]; }) } ❝完整代码请移步:webpack.config.js[7] 部署时遇到的问题

    2.2K40编辑于 2022-04-10
  • 来自专栏腾讯IMWeb前端团队

    Nest.js 实践总结

    import { Exclude } from 'class-transformer'; export class UserEntity {   id: number;   firstName: string import { Exclude } from 'class-transformer'; export class UserEntity {   id: number;   firstName: string

    2.3K20编辑于 2022-06-29
  • 来自专栏Nest.js 实战系列

    Nest.js 实战 (四):利用 Pipe 管道实现数据验证和转换

    则使用默认值替换它 ParseFilePipe:用于处理上传的文件,它可以验证文件的类型、大小等,确保上传的文件符合预期 自定义管道 1、 安装依赖 pnpm add class-validator class-transformer BadRequestException, Injectable, PipeTransform } from '@nestjs/common'; import { plainToClass } from 'class-transformer

    79210编辑于 2025-08-14
  • 来自专栏程序员成长指北

    Nest.js 实践总结分享

    import { Exclude } from 'class-transformer'; export class UserEntity { id: number; firstName: string import { Exclude } from 'class-transformer'; export class UserEntity { id: number; firstName: string

    2.5K10发布于 2021-09-18
  • 来自专栏Nodejs技术栈

    Nest.js 实战系列四:使用管道、DTO 验证入参,摆脱 if-else 的恐惧

    简单介绍完一些概念后,开始实战,先创建 pipe 文件: $ nest g pipe validation pipe 这里我们还需要安装两个依赖包: $ yarn add class-validator class-transformer BadRequestException } from'@nestjs/common'; import { validate } from'class-validator'; import { plainToClass } from'class-transformer

    4.6K20发布于 2021-07-15
  • 来自专栏图雀社区

    Nest.js 从零到壹系列(五):使用管道、DTO 验证入参,摆脱 if-else 的恐惧

    简单介绍完一些概念后,开始实战,先创建 pipe 文件: $ nest g pipe validation pipe 这里我们还需要安装两个依赖包: $ yarn add class-validator class-transformer } from '@nestjs/common'; import { validate } from 'class-validator'; import { plainToClass } from 'class-transformer

    4.6K41发布于 2020-04-07
  • 来自专栏前端Q

    也许跟大家不太一样,我是这么用TypeScript来写前端的

    可以参考这篇文章:TypeScript 中的元数据以及 reflect-metadata 实现原理分析[1] 在实际使用中, 我们早前用的是 class-transformer 这个库, 之前我对这个库的评价应该是非常高的 : “如果没有 class-transformer 这个库, TypeScript 狗都不写。”

    50720编辑于 2023-09-12
  • 来自专栏神光的编程秘籍

    一个参数验证,学会 Nest.js 的两大机制:Pipe、ExceptionFilter

    } from '@nestjs/common'; import { validate } from 'class-validator'; import { plainToClass } from 'class-transformer Validation failed'); } return value; } } 因为我们是用装饰器做的配置,那就要通过对象拿到它对应的类的装饰器,所以在 validate 之前要调用 class-transformer

    1.8K10编辑于 2021-12-29
  • 来自专栏小鑫同学编程历险记

    NestJs 管道(Pipe)

    首先执行 npm i --save class-validator class-transformer 安装必要的模块,接着为 CreateUserDto 增加验证相关的装饰器。 from '@nestjs/common'; import { validate } from 'class-validator'; import { plainToInstance } from 'class-transformer

    1.5K20编辑于 2023-10-16
  • 来自专栏前端开发学kotlin

    前端开发者的 Kotlin 之旅:注解系统解析

    ": $jsonValue") } return "{${jsonFields.joinToString(", ")}}" }}前端对比:// 类似 class-transformer 的序列化import { plainToClass, classToPlain } from 'class-transformer';const userForm = new UserForm();const

    38010编辑于 2025-08-27
  • 来自专栏漫漫前端路

    使用 NestJS 开发 Node.js 应用

    createCatDto: CreateCatDto) { this.catsService.create(createCatDto); } 复制代码 数据验证 得益于 class-validator 与 class-transformer

    3.7K60发布于 2018-12-21
  • 来自专栏一飞开源

    [开源]一个现代化协同文档编辑器,丰富的编辑能力与多人实时协作

    提供文档协同编辑的 WebSocket 服务与 CRDT 算法实现 数据库 ORM Prisma 类型安全的数据库访问工具,自动生成 Schema、支持迁移与种子数据 数据验证 class-validator, class-transformer

    1K10编辑于 2025-11-30
  • 来自专栏神奇的程序员的专栏

    Nest项目部署的最佳方式

    nestjs/websockets/socket-module", "cache-manager", "class-validator", "class-transformer

    7.2K51编辑于 2022-04-10
  • 来自专栏神奇的程序员的专栏

    实现Nest中参数的联合类型校验

    class-transformer这个库中,提供了Transform方法,它接受一个回调函数作为参数,回调函数中提供了一个TransformFnParams类型的参数,其中的value字段就是客户端传过来的参数

    1.9K20编辑于 2022-05-25
领券