小编slu*_*ist的帖子

如何根据Svelte中的道具设置动态html标签

我正在创建一个Heading组件,svelte作为学习该框架基础知识的一部分。组件行为非常简单。

该组件将有一个名为 的道具level,它将相应地呈现适当的<h>标签。

例如。

<Heading level={3}> would render <h3>content</h3> 
<Heading level={1}> would render <h1>content</h1>
Run Code Online (Sandbox Code Playgroud)

我目前可以做到这一点,

<script>
  export let level = 3;
</script>

{#if level === 1}
  <h1>
   <slot></slot>
  </h1>
{:else if level === 2}
  <h2>
   <slot></slot>
  </h2>
{:else if level === 3}
  <h3>
   <slot></slot>
  </h3>
{:else if level === 4}
  <h4>
   <slot></slot>
  </h4>
{:else if level === 5}
  <h5>
   <slot></slot>
  </h5>
{/if}
Run Code Online (Sandbox Code Playgroud)

但这种感觉就像是一种非常幼稚的方法。有没有更好的方法来实现这种行为svelte ?

javascript svelte svelte-3

6
推荐指数
3
解决办法
1522
查看次数

标签 统计

javascript ×1

svelte ×1

svelte-3 ×1