Skip to main content
基本 Svelte
介绍
反应性
属性
逻辑
事件
绑定
类和样式
动作
转换
高级 Svelte
高级反应性
重用内容
运动
高级绑定
高级转换
上下文 API
特殊元素
<script module>
后续步骤
基本 SvelteKit
介绍
路由
加载数据
标题和 cookie
共享模块
表单
API 路由
$app/state
错误和重定向
高级 SvelteKit
钩子
页面选项
链接选项
高级路由
高级加载
环境变量
结论

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>