MST

星途 面试题库

面试题:Svelte中Slot机制的基础使用

请简述Svelte中Slot机制的基本原理,并给出一个简单示例说明如何在父组件传递内容到子组件的插槽中。
42.6万 热度难度
前端开发Svelte

知识考点

AI 面试

面试题答案

一键面试

Svelte中Slot机制基本原理

  1. 概念:Slot(插槽)机制允许父组件向子组件传递内容。它就像是子组件定义的一个占位符,父组件可以将自己的HTML、Svelte组件或文本插入到这个占位符中。
  2. 原理
    • 在子组件中,使用<slot>标签定义插槽位置。当子组件渲染时,<slot>标签所在位置会被父组件传入的内容替换。
    • 可以有默认内容,即当父组件没有传入内容时,子组件的<slot>标签内的默认内容会被渲染。
    • 具名插槽(named slots)还允许父组件将不同部分的内容插入到子组件的不同插槽位置。

简单示例

  1. 子组件(例如Child.svelte
<script>
    // 子组件逻辑,这里简单定义一个变量
    let message = 'This is a child component';
</script>

<div>
    <h2>Child Component</h2>
    <slot>默认内容,如果父组件没有传入内容,将显示这段。</slot>
</div>
  1. 父组件(例如Parent.svelte
<script>
    import Child from './Child.svelte';
</script>

<Child>
    <p>这是从父组件传入到子组件插槽的内容。</p>
</Child>

在上述示例中,父组件Parent.svelte<p>这是从父组件传入到子组件插槽的内容。</p>传入到了子组件Child.svelte的插槽位置,替换了子组件插槽中的默认内容。