使用class-validator进行后端数据约束

2020-07-04  本文已影响0人  percykuang

安装

yarn add class-validator

在Article类中使用

import { ArrayMinSize, IsDate, IsNotEmpty } from 'class-validator'

class Article {

  @IsNotEmpty({ message: '文章标题不可以为空' })
  public title: string

  @IsNotEmpty({ message: '文章标签不可以为空' })
  @ArrayMinSize(1, { message: '文章标签至少有一个' })
  public tagList: string[]

  @IsNotEmpty({ message: '发布日期不可以为空' })
  @IsDate()
  public publishTime: Date

  @IsNotEmpty({ message: '文章内容不可以为空' })
  public content: string
}

export default Article

在入口文件index.ts中测试

import Express from 'express'
import articleRoute from './routes/articleRoute'
import Article from './model/Article'
import { validate } from 'class-validator'

const app = Express()

app.use('/api/article', articleRoute)

const article = new Article()

article.title = '12345'
article.content = '123'
article.publishTime = new Date()

validate(article).then(errors => {
  console.log(errors)
})

app.listen(3000, () => console.log('服务已开启!'))

运行结果

1.png
上一篇 下一篇

猜你喜欢

热点阅读