2021-08-03
本篇内容几乎与 svelte 60 练 一致,没有深入到 svelte 内部。以及对比 Vue 一些写法上的差异。
如果你对 svelte 有兴趣,不妨练习一番。
有些组件在某些场景下需要用到自身,例如文件树中的 Folder
。
svelte
// Folder.svelte
{#if condition}
<svelte:self />
{:else}
<File />
{/if}
vue
// Folder.vue
<template>
<Folder v-if="condition" />
<File v-else />
</template>
<script>
export default {
// 需要为当前组件命名
name: 'Folder'
}
</script>
svelte
<script>
import Foo from './Foo.svelte'
</script>
<svelte:component this={Foo} />
vue
<script>
import Foo from './Foo.vue'
</script>
<component :is="Foo" />