Puis-je utiliser deux composants identiques dans la même application ?
P粉938936304
P粉938936304 2023-08-14 15:08:37
0
1
556
<p>Dans certains cas, vous souhaitez appeler une fenêtre contextuelle ou non-popup</p> <pre class="brush:php;toolbar:false;"><template> <!-- Fenêtre contextuelle ---> <v-dialog v-model="popupFlag"> <A :prop-option="option"> </v-dialogue> <!-- Contenu principal ---> <div v-if="!popupFlag"> <B :prop-option="option"> </div> </modèle> importer A depuis "C.vue" importer B depuis "C.vue" exporter par défaut { accessoires : { popupFlag : { tapez: booléen, requis : vrai, par défaut : faux, } }, données() { retour: { option : 'blabla' } } }</pré> <p>J'ai configuré le code comme suit, est-ce le bon code ? Puis-je utiliser les mêmes composants ? (C.vue)&Lt ;/p> ;
P粉938936304
P粉938936304

répondre à tous(1)
P粉838563523

Oui, bien sûr, il est possible d'utiliser plusieurs fois le même composant dans un composant parent. Chaque fois qu'il est inséré dans un modèle, une nouvelle instance du composant est créée. Donc, dans votre cas, votre code peut être simplifié comme suit :

<template>
  <!-- 主要部分 -->
  <div v-if="!popupFlag">
    <C :prop-option="option" />
  </div>

  <!-- 弹出部分 -->
  <div v-else>
    <C :prop-option="option" />
  </div>
</template>

...
import C from "C.vue"
...

Ou, le moyen le plus simple est :

<C :prop-option="popupFlag ? optionForPopup : optionForMain" />

De cette façon, vous pouvez réutiliser efficacement le même composant avec différentes options selon popupFlag.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal