HTML 没有表达逻辑的方式,如条件和循环。Svelte 可以。
¥HTML doesn’t have a way of expressing logic, like conditionals and loops. Svelte does.
为了有条件地渲染某些标记,我们将其封装在 if
块中。让我们添加一些当 count
大于 10
时出现的文本:
¥To conditionally render some markup, we wrap it in an if
block. Let’s add some text that appears when count
is greater than 10
:
App
<button onclick={increment}>
Clicked {count}
{count === 1 ? 'time' : 'times'}
</button>
{#if count > 10}
<p>{count} is greater than 10</p>
{/if}
尝试 — 更新组件,然后单击按钮几次。
¥Try it — update the component, and click on the button a few times.
1
2
3
4
5
6
7
8
9
10
11
12
13
<script>
let count = $state(0);
function increment() {
count += 1;
}
</script>
<button onclick={increment}>
Clicked {count}
{count === 1 ? 'time' : 'times'}
</button>