【发布时间】:2021-06-24 23:53:24
【问题描述】:
给定以下接口和相应的Yup 架构。 TypeScript 有没有办法自动推断条件函数参数(例如 enabled 和 schema)?
import { object as yupObject, string as yupString, boolean as yupBoolean } from 'yup';
interface Foo {
enabled: boolean
name?: string
}
const fooSchema = yupObject().shape({
enabled: yupBoolean(),
name: yupString().when('enabled', (enabled, schema) => enabled ? schema.required() : schema)
})
我试过yupObject()<Foo> 和shape<Foo>(..) 但都没有帮助。如果不能自动完成,在这种情况下schema 的合适类型是什么?
【问题讨论】:
-
您找到解决方案了吗?这两个问题可能相关:github.com/jquense/yup/issues/1210github.com/jquense/yup/issues/1158
标签: typescript yup