Vue.js 对象嵌套数组的Vue JS Vuelidate验证问题

Vue.js 对象嵌套数组的Vue JS Vuelidate验证问题,vue.js,validation,vuejs3,vuelidate,vue-validator,Vue.js,Validation,Vuejs3,Vuelidate,Vue Validator,我尝试使用Vuelidate的集合验证。(我正在使用Vue 3)。 所以,我现在的做法是渲染输入字段,但我这里缺少的是验证,它不起作用。 我应该在我的v$对象中有$each数组,但我没有,也不知道为什么,我做了文档中的所有事情[https://vuelidate.js.org/#sub-集合验证]。有什么帮助吗???我希望前两个输入是必需的 这就是我的代码的外观: <form @submit.prevent="onSubmit"> <div cl

我尝试使用Vuelidate的集合验证。(我正在使用Vue 3)。 所以,我现在的做法是渲染输入字段,但我这里缺少的是验证,它不起作用。 我应该在我的v$对象中有$each数组,但我没有,也不知道为什么,我做了文档中的所有事情[https://vuelidate.js.org/#sub-集合验证]。有什么帮助吗???我希望前两个输入是必需的

这就是我的代码的外观:

  <form @submit.prevent="onSubmit">
    <div class="form-items">
      <div
        class="form-group"
        v-for="(property, index) in v$.properties.$model"
        :key="index"
      >
        <label :for="property.name">{{ property.label }}</label>
        <input
          :type="property.type"
          class="form-control"
          :id="property.name"
          v-model="property.value"
        />
      </div>
      <pre>{{ v$ }}</pre>
    </div>
    <Button
      type="submit"
      variant="primary"
      text="Add property"
      :onClick="onSubmit"
    />
  </form>
</template>

<script>
import useVuelidate from "@vuelidate/core";
import { required } from "@vuelidate/validators";
import Button from "../components/Button";

export default {
  name: "PropertyForm",
  components: {
    Button,
  },
  setup() {
    return { v$: useVuelidate() };
  },
  data() {
    return {
      properties: [
        {
          name: "title",
          label: "Title",
          value: "",
          type: "text",
        },
        {
          name: "regular_price",
          label: "Regular price",
          value: "",
          type: "number",
        },
        {
          name: "sales_price",
          label: "Sales price",
          value: "",
          type: "number",
        },
        { name: "zip", label: "Zip", value: "", type: "text" },
        {
          name: "neighborhood",
          label: "Neighborhood",
          value: "",
          type: "text",
        },
        {
          name: "city",
          label: "City",
          value: "",
          type: "text",
        },
        { name: "status", label: "Status", value: "", type: "number" },
      ],
    };
  },
  validations: {
    properties: {
      required,
      $each: {
        name: {
          required,
        },
      },
    },
  },
};
</script>```

{{property.label}
{{v$}}
从“@vuelidate/core”导入useVuelidate;
从“@vuelidate/validators”导入{required}”;
从“./组件/按钮”导入按钮;
导出默认值{
名称:“PropertyForm”,
组成部分:{
按钮
},
设置(){
返回{v$:useVuelidate()};
},
数据(){
返回{
特性:[
{
姓名:“职务”,
标签:“标题”,
值:“”,
键入:“文本”,
},
{
名称:“正常价格”,
标签:“正常价格”,
值:“”,
键入:“数字”,
},
{
名称:“销售价格”,
标签:“销售价格”,
值:“”,
键入:“数字”,
},
{name:“zip”,label:“zip”,value:,type:“text”},
{
名称:“邻里”,
标签:“邻里”,
值:“”,
键入:“文本”,
},
{
名称:“城市”,
标签:“城市”,
值:“”,
键入:“文本”,
},
{name:“status”,label:“status”,value:,type:“number”},
],
};
},
验证:{
特性:{
必修的,
每人$:{
姓名:{
必修的,
},
},
},
},
};
```

$each
在最新VuelDate中不受支持,