Est-il possible de passer un composant que les accessoires et les utiliser dans un Composant enfant en Vue?

Dans une Vue 2.0 app, disons que nous avons des composants A, B et C.

A déclare, enregistre et utilise B

Est-il possible de passer à C de A à B?

Quelque chose comme ceci:

<template>
  <div class="A">
    <B :child_component="C" />
  </div>
</template>

Et l'utilisation de C en B, en quelque sorte.

<template>
  <div class="B">
    <C>Something else</C>
  </div>
</template>

La motivation: je veux créer un composant générique B qui est utilisé dans A mais reçoit de A son enfant C. En fait A utilisera B plusieurs fois en passant différents " C " pour elle.

Si cette approche n'est pas correcte, ce qui est la façon correcte de le faire en Vue?

Réponse @Saurabh

Au lieu de passer comme des accessoires, j'ai essayé la suggestion à l'intérieur de B.

<!-- this is where I Call the dynamic component in B -->

<component :is="child_component"></component>

//this is what I did in B js
components: {
 equip: Equipment
}, 
data () {
 return {
   child_component: 'equip',
   _list: []
 }
}

Fondamentalement, je suis en train de rendre l'Équipement, mais d'une manière dynamique

Je reçois 3 erreurs dans la console et une page vierge

[Vue avertir]: Erreur lors du rendu de la composante à /home/victor/projetos/tokaai/public/src/composants/EquipmentFormItem.vue:

Uncaught TypeError: Cannot read property 'nom' undefined

TypeError: Cannot read property 'setAttribute' undefined

Apparemment, je suis en train de faire quelque chose de mal

  • Êtes-vous sûr que ces erreurs proviennent de ces code seulement, où en êtes-vous à l'aide de setAttribute ou name attribut?
  • doit être un processus interne. Je ne suis pas le faire dans cette application