1

我有一个关于消毒剂如何在 v4 中工作的问题。API 文档是这样说的:

只要我们支持最新的验证器版本,validator.js 列出的任何验证和清理方法都可以在 express-validator 创建的所有验证链中使用。如果您将任何消毒剂与验证器一起使用,则验证值就是经过消毒的值。

如果我正确理解了文档,您应该能够像这样链接:

const {check, validationResult} = require('express-validator/check'),
      {matchedData, sanitize} = require('express-validator/filter')

check("firstName").isAlpha().trim().withMessage("First name must only contain letters.")

或者trim()链接到消毒链,例如:

  check("firstName").isAlpha().withMessage("First name must only contain letters.") 
  sanitize("firstName").trim()

但是,该trim()方法在上述任何一种方式中都不起作用。它起作用的唯一方法是当方法链接到两个链时,例如:

check("firstName").isAlpha().trim().withMessage("First name must only contain letters."),
sanitize("firstName").trim()

我的问题:为什么这只适用于上一个示例中所示的?我究竟做错了什么?

谢谢。

4

0 回答 0