年度股东大会 - "standaloneCode is not a function"
AJV - "standaloneCode is not a function"
我正在尝试为我的 Express 后端编写一个 'sign up' 验证器。我为此使用 AJV。显然,我想将验证器模式导出为模块,因此我关注 AJV 文档中的 this 页面。但是我不断得到:TypeError: standaloneCode is not a function
这是我的代码:
const Ajv = require("ajv")
const ajv = new Ajv({ code: { source: true } })
const standaloneCode = require("ajv/dist/standalone")
const signupSchema = {
type: "object",
properties: {
username: { type: "string" },
email: { type: "string" },
password: { type: "string" },
confirmPassword: { type: "string" },
},
required: ["username", "email", "password", "confirmPassword"],
}
const validate = ajv.compile(signupSchema)
const moduleCode = standaloneCode(ajv, validate)
module.exports = moduleCode
提前致谢。
这似乎是 AJV 文档中的一个错误 (https://ajv.js.org/standalone.html)。捆绑的 standalone
模块具有 ESM 样式导出,因此在使用 require
:
时需要明确引用 .default
const standaloneCode = require('ajv/dist/standalone').default
我正在尝试为我的 Express 后端编写一个 'sign up' 验证器。我为此使用 AJV。显然,我想将验证器模式导出为模块,因此我关注 AJV 文档中的 this 页面。但是我不断得到:TypeError: standaloneCode is not a function
这是我的代码:
const Ajv = require("ajv")
const ajv = new Ajv({ code: { source: true } })
const standaloneCode = require("ajv/dist/standalone")
const signupSchema = {
type: "object",
properties: {
username: { type: "string" },
email: { type: "string" },
password: { type: "string" },
confirmPassword: { type: "string" },
},
required: ["username", "email", "password", "confirmPassword"],
}
const validate = ajv.compile(signupSchema)
const moduleCode = standaloneCode(ajv, validate)
module.exports = moduleCode
提前致谢。
这似乎是 AJV 文档中的一个错误 (https://ajv.js.org/standalone.html)。捆绑的 standalone
模块具有 ESM 样式导出,因此在使用 require
:
.default
const standaloneCode = require('ajv/dist/standalone').default