Les emplacements dans Vue.js permettent aux composants d'insérer du contenu personnalisé, permettant ainsi la réutilisation et la flexibilité du code. Comment fonctionnent les slots : Le composant parent crée le slot via <slot>. Les composants enfants insèrent du contenu dans les emplacements des composants parents via <template> Les emplacements peuvent recevoir un nom en utilisant l'attribut name pour indiquer clairement où les insérer. Fonction : Flexibilité de réutilisation du code Séparation du contenu Communication entre les composants Par exemple, vous pouvez créer des composants de formulaire réutilisables, des titres personnalisés et des boutons de soumission.
Le rôle des slots dans Vue.js
Les slots sont une fonctionnalité importante dans Vue.js, qui permettent d'insérer du contenu personnalisé dans les composants, permettant ainsi la réutilisation et la flexibilité du code.
Comment fonctionnent les slots
Dans le composant parent, les slots peuvent être créés via la balise <slot>
. Un emplacement définit un espace réservé que les composants enfants peuvent remplir. Dans le composant enfant, insérez le contenu dans l'emplacement du composant parent via la balise <template>
et la directive v-slot
, comme suit : <slot>
标签创建插槽。插槽定义了一个占位符,子组件可以填充此占位符。在子组件中,通过 <template>
标签和 v-slot
指令将内容插入父组件的插槽中,如下所示:
<code class="html"><!-- 父组件 --> <my-component> <slot name="header"></slot> <slot name="content"></slot> <slot name="footer"></slot> </my-component> <!-- 子组件 --> <template> <div> <h1 v-slot:header>插槽标题</h1> <p v-slot:content>插槽内容</p> <button v-slot:footer>按钮</button> </div> </template></code>
命名插槽
插槽可以使用 name
属性指定名称,这样就可以更明确地指定插入内容的位置。例如,在上面的示例中,我们使用了 header
、content
和 footer
<code class="html"><!-- 父组件 --> <my-form> <template v-slot:title><h2>填写表单</h2></template> <template v-slot:submit-button><button type="submit">提交</button></template> </my-form> <!-- 子组件 --> <template> <form> {{ title }} <input type="text" placeholder="姓名" /> <input type="email" placeholder="电子邮件" /> {{ submitButton }} </form> </template></code>
Named insert Slots
Les emplacements peuvent être nommés à l'aide de l'attributname
, qui vous permet de spécifier plus clairement où insérer le contenu. Par exemple, dans l'exemple ci-dessus, nous avons utilisé les noms header
, content
et footer
pour spécifier l'emplacement de l'emplacement.
Communication inter-composants : Grâce aux slots, les composants enfants peuvent transmettre des données ou des événements aux composants parents et vice versa.
Exemple
🎜🎜Par exemple, nous pouvons utiliser des slots pour créer un composant de formulaire réutilisable : 🎜rrreee🎜En utilisant des slots, nous pouvons personnaliser le titre du formulaire et le bouton de soumission sans casser la structure du composant parent. 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!