0

如何将对象转换为Joi类型/定义的对象?

我有一堆需要分类的对象。我需要知道每个条目是什么,并且它需要能够深入了解可能的多层数组和/或对象(参见下面的示例)。

我需要这个的原因是我正在使用frisbyjs来验证 API 响应,并且它需要一个 Joi 类型的对象来与 API 响应进行比较。

输入:

{
    reservation: {
        alterations: [],
        arrival_details: {
            guest_checkin_time_from: {
                formatted_hour: "NOT_SELECTED",
                localized_hour_string: "Select"
            },
            is_bringing_pets: false,
            number_of_adults: 2
        },
        booked_at: "2019-03-15T14:35:28Z",
        cancellation_host_fee: 0
    }
}

输出:

{
    reservation: Joi.object({
        alterations: Joi.array(),
        arrival_details: Joi.object({
            guest_checkin_time_from: Joi.object({
                formatted_hour: Joi.string(),
                localized_hour_string: Joi.string()
            }),
            is_bringing_pets: Joi.bool(),
            number_of_adults: Joi.number()
        }),
        booked_at: Joi.date(),
        cancellation_host_fee: Joi.number()
    })
}
4

0 回答 0