recherche

Maison  >  Questions et réponses  >  le corps du texte

Comment restituer le contenu dans le slot

<p>Comme indiqué ci-dessous, j'ai créé un bouton <code></code> Le nom de l'emplacement est <code>slotDigitizePolygonBtnLabel</code>. Le <code>button</code> dans le composant enfant doit avoir une propriété appelée <code>disabilityState</code> pour indiquer si le bouton est désactivé. </p> <p>Dans le composant parent, je souhaite afficher le bouton <code></code> du composant enfant et transmettre la valeur de <code>disabilityState</code> </p> <p>Lorsque j'exécute le code, rien n'est rendu. S'il vous plaît dites-moi où se trouve mon erreur et comment la corriger. </p> <p><strong>Sous-composant : DigitizePolygonButton.vue</strong></p> <pre class="brush:php;toolbar:false;"><template> <id du bouton="idDigitizePolygonBtn" class="clsDigitizePolygonBtn" :disabilityState="isDigitizePolygonBtnDisabled"> <slot name="slotDigitizePolygonBtnLabel">text</slot> </bouton> </modèle> <script> exporter par défaut { configuration (accessoires) { retour { digitizePolygonBtnDisabilityState : props.isDigitizePolygonBtnDisabled, } ; }, accessoires : { isDigitizePolygonBtnDisabled : { tapez: booléen, requis : vrai, par défaut : faux, }, }, } ; </script></pre> <p><strong>Composant parent</strong> :</p> <pre class="brush:php;toolbar:false;"><template v-slot:slotDigitizePolygonBtnLabel> <DigitizePolygonButton :disabilityState="false"> test </DigitizePolygonButton> </template></pre>
P粉877114798P粉877114798467 Il y a quelques jours564

répondre à tous(1)je répondrai

  • P粉278379495

    P粉2783794952023-08-18 13:12:55

    Vous devez modifier certaines propriétés dans votre code Vous avez écrit DisabilityState au lieu de DisabledState

    <template>
    <button id="idDigitizePolygonBtn" class="clsDigitizePolygonBtn" :disabled="disabledState">
    <slot name="slotDigitizePolygonBtnLabel">text</slot>
    </button>
    </template>
    
    <script>
    export default {
        setup(props) {
            return {
                disabledState: props.isDigitizePolygonBtnDisabled,
            };
        },
        props: {
            isDigitizePolygonBtnDisabled: {
                type: Boolean,
                required: true,
                default: false,
            },
        },
    };
    </script>

    Dans votre composant parent, vous devez transmettre la propriété isDigitizePolygonBtnDisabled au composant enfant au lieu de désactivéState. Modifications apportées au composant parent :

    <template>
        <DigitizePolygonButton :isDigitizePolygonBtnDisabled="false">
            <template v-slot:slotDigitizePolygonBtnLabel>
                <button>测试按钮</button>
            </template>
        </DigitizePolygonButton>
    </template>

    Apporter ces modifications devrait fonctionner correctement.

    répondre
    0
  • Annulerrépondre