Vue 3 Props: методы определения и передачи данных в Vue.js 3

«Props Vue 3» относится к методу определения и передачи данных из родительского компонента в дочерний компонент в Vue.js версии 3. В Vue 3 реквизиты объявляются с использованием опции props. или API композиции.

Вот несколько методов работы с реквизитами во Vue 3:

  1. Объявление реквизитов в API параметров.
    В API параметров вы можете объявить реквизиты с помощью параметра props. Например:

    props: {
     propName: {
       type: String, // Prop type
       required: true // Whether the prop is required or not
     }
    }
  2. Объявление реквизитов в API композиции.
    В API композиции вы можете использовать функцию definePropsдля объявления реквизитов. Например:

    import { defineProps } from 'vue';
    export default {
     setup(props) {
       defineProps({
         propName: {
           type: String,
           required: true
         }
       });
     }
    }
  3. Передача реквизитов от родительского компонента к дочернему:
    Чтобы передать реквизиты из родительского компонента в дочерний, вы можете использовать директиву v-bindили сокращенную запись :в вашем шаблоне. Например:

    <child-component :propName="parentData"></child-component>
  4. Доступ к реквизитам в дочернем компоненте.
    В дочернем компоненте вы можете получить доступ к полученным реквизитам с помощью параметра propsв API параметров или с помощью настройки .в API композиции. Например:

    // Options API
    export default {
     props: ['propName'],
     // ...
    }
    // Composition API
    import { ref } from 'vue';
    export default {
     props: ['propName'],
     setup(props) {
       const propName = ref(props.propName);
       // ...
     }
    }
  5. Проверка реквизита и значения по умолчанию.
    Вы можете выполнить проверку реквизита, используя различные параметры, такие как type, required, default, валидатори т. д. Кроме того, вы можете указать значения по умолчанию для свойств, если они не предоставлены родительским компонентом.