如何验证 Vuelidate 中的嵌套对象?

发布于 2025-01-16 09:09:14 字数 417 浏览 4 评论 0原文

我在项目中使用 Vuelidate 并具有以下形式:

data () {
  return {
    form: {
      title: undefined,
      users: [{
        name: undefined,
        age: undefined,
      }],
    },
  };
},

我为“form.title”配置了验证规则,如下所示:

validations () {
  return {
    form: {
      title: {
        required,
      },
    },
  };
},

现在,我还需要为“form.users”对象数组配置验证。

我怎样才能这样做呢?

I use Vuelidate in my project and have the following form:

data () {
  return {
    form: {
      title: undefined,
      users: [{
        name: undefined,
        age: undefined,
      }],
    },
  };
},

I configured validation rules for the "form.title" like so:

validations () {
  return {
    form: {
      title: {
        required,
      },
    },
  };
},

Now, I also need to configure validation for the "form.users" array of objects.

How can I do so?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

孤独患者 2025-01-23 09:09:14

我找到了我的问题的答案。

我们可以使用 forEach 帮助器验证对象数组。

import { helpers, required } from '@vuelidate/validators';

以下代码适用于 Vuelidate v2.0.0:

validations () {
  return {
    form: {
      users: {
        $each: helpers.forEach({
          name: {
            required,
          },
          age: {
            required,
          },
        }),
      },
    },
  };
},

I found the answer to my question.

We can validate arrays of objects using the forEach helper.

import { helpers, required } from '@vuelidate/validators';

The following code works for me with Vuelidate v2.0.0:

validations () {
  return {
    form: {
      users: {
        $each: helpers.forEach({
          name: {
            required,
          },
          age: {
            required,
          },
        }),
      },
    },
  };
},
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文