如何將內容渲染到插槽中
P粉877114798
2023-08-18 00:30:15
<p>如下所示,我在子元件中建立了一個有插槽的<code>button</code>。插槽的名稱是<code>slotDigitizePolygonBtnLabel</code>。子元件中的<code>button</code>應該有一個名為<code>disabilityState</code>的屬性來表示按鈕是否被停用。 </p>
<p>在父元件中,我想要渲染子元件的<code>button</code>並將<code>disabilityState</code>的值從父元件傳遞給子元件。 </p>
<p>當我運行程式碼時,沒有任何內容被渲染。請告訴我我的錯誤在哪裡以及如何修復它。 </p>
<p><strong>子元件:DigitizePolygonButton.vue</strong></p>
<pre class="brush:php;toolbar:false;"><template>
<button id="idDigitizePolygonBtn" class="clsDigitizePolygonBtn" :disabilityState="isDigitizePolygonBtnDisabled">
<slot name="slotDigitizePolygonBtnLabel">text</slot>
</button>
</template>
<script>
export default {
setup(props) {
return {
digitizePolygonBtnDisabilityState: props.isDigitizePolygonBtnDisabled,
};
},
props: {
isDigitizePolygonBtnDisabled: {
type: Boolean,
required: true,
default: false,
},
},
};
</script></pre>
<p><strong>父親組件</strong>:</p>
<pre class="brush:php;toolbar:false;"><template v-slot:slotDigitizePolygonBtnLabel>
<DigitizePolygonButton :disabilityState="false"> test </DigitizePolygonButton>
</template></pre>
你應該在你的程式碼中更改一些屬性 你寫的是 disabilityState 而不是 disabledState
在你的父元件中,你應該將 isDigitizePolygonBtnDisabled 屬性傳遞給子元件,而不是 disabledState。 對父元件進行的變更:
進行這些更改應該可以正常工作。