Next.js 使用yup的唯一名称

Next.js 使用yup的唯一名称,next.js,yup,react-hook-form,Next.js,Yup,React Hook Form,我有个问题: 当我在文本字段中写入时,我想验证是否为唯一名称 我尝试了所有这些解决方案: 但是没有运气。。。我认为这是因为它们作为数组工作,所以我尝试: yup.addMethod(yup.array, 'unique', function(message, mapper = a => a) { return this.test('unique', message, function(list) { return list.length === new Set(l

我有个问题: 当我在文本字段中写入时,我想验证是否为唯一名称

我尝试了所有这些解决方案:

但是没有运气。。。我认为这是因为它们作为数组工作,所以我尝试:

yup.addMethod(yup.array, 'unique', function(message, mapper = a => a) {
    return this.test('unique', message, function(list) {
        return list.length  === new Set(list.map(mapper)).size;
    });
});
我键入一个名称(节日B已经存在)并接收如下消息:

因此,我尝试更改“数组”x“字符串”:

然后我用它:

const schema = yup.object().shape({
    name: yup.string().unique('Name must be unique'),
});
如果有人能帮助我,我会非常感激的

yup.addMethod(yup.string, 'unique', function(message, mapper = a => a) {
    return this.test('unique', message, function(list) {
        return list.length  === new Set(list.map(mapper)).size;
    });
});
const schema = yup.object().shape({
    name: yup.string().unique('Name must be unique'),
});