Замена $детей в vue 3

#vuejs3

#vuejs3

Вопрос:

В настоящее время я использую vue 2 (с Nuxt).

У меня есть 2 пользовательских компонента (форма и сообщение об ошибке), которые можно использовать следующим образом:

 lt;Formgt;  lt;divgt;  lt;input type="text" name="Name" autocomplete="off" v-model="name"gt;  lt;ErrorMessage v-model="name" required minlength="4"gt;lt;/ErrorMessagegt;  lt;divgt; lt;/Formgt;  

В lt;ErrorMEssagegt; , у меня есть validate метод:

 export default {  methods: {  validate() {  // someLogic  } }  

Внутри lt;Formgt; у меня есть submitHandler метод , который будет перебирать все lt;ErrorMessagegt; , чтобы вызвать его validate :

 lt;templategt;  lt;form ref="form" @submit.prevent="submitHandler"gt;  lt;slotgt;lt;/slotgt;  lt;/formgt; lt;/templategt;  lt;scriptgt;  export default {  submitHandler() {  this.$children.forEach(c =gt; {  c.validate()  })   }  } lt;/scriptgt;  

Это прекрасно работает, так как $children могут перебирать все lt;ErrorMessagegt; , даже если они глубоко вложены в несколько разделов.

Поэтому мой вопрос в том, как я могу сделать то же самое в vue3, поскольку $children удален?