【发布时间】:2020-04-12 00:57:54
【问题描述】:
我有一个名为 directorySchema 的 Joi 模式,除其他键外,该模式还有一个名为 parentDirectory 的键,该类型也是一个 directorySchema,如果目录是根/头,则可能为 null,另一个键称为目录, 哪个类型也是 directorySchemas 的数组。基本上这个模式代表一个双向链表。
按照示例进行:
const Joi = require('@hapi/joi')
const directorySchema = Joi.object({
name: Joi.string().required(),
path: Joi.string().required(),
size: Joi.number().min(0).required(),
directories: Joi.array().items(...) // how to reference "directorySchema" here
parentDirectory: ... // and here?
})
module.exports = directorySchema
这张图解释了双向链表的概念,盒子对象代表目录。
我想知道,是否可以创建一个双链表来验证我在 Joi 中的对象?
【问题讨论】:
-
我个人没有太多直接使用 Joi 的经验,但听起来您想创建一个模式,其中您的属性引用相同模式的其他对象。看看这个 SO answer 以获取有关如何执行此操作的建议。
标签: javascript node.js joi