Javascript Yup-在错误消息中输出字段值

Javascript Yup-在错误消息中输出字段值,javascript,yup,Javascript,Yup,我正在尝试输出错误消息中的字段值,操作如下: const schema = commonSchema.concat(Yup.object().shape({ name: Yup .string() .oneOf( [Yup.ref('oldName'), null], `Name must match oldName - ${Yup.ref('oldName').getValue()}` ) .required('name'), }))

我正在尝试输出错误消息中的字段值,操作如下:

const schema = commonSchema.concat(Yup.object().shape({
  name: Yup
    .string()
    .oneOf(
      [Yup.ref('oldName'), null],
      `Name must match oldName - ${Yup.ref('oldName').getValue()}`
    )
    .required('name'),
}));

这是给定的TypeError:无法读取未定义的属性“parent”。访问错误消息中的字段值的正确方法是什么?

我将值放入错误消息的技巧是使用yup.lazy方法

yup.lazy((value: any) => Schema): Lazy
在你的情况下,它看起来像这样

const schema = commonSchema.concat(Yup.object().shape({
  name: Yup.lazy((value) => 
    Yup.string()
    .oneOf(
      [Yup.ref('oldName'), null],
      `Name must match oldName - ${value}`
    )
    .required('name')),
}));