Skip to main content

リアクティブな を宣言するだけでなく、任意の ステートメント をリアクティブに実行することもできます。例えば、count の値が変化するたびにログを取ることができます。

App.svelte
let count = 0;

$: console.log(`the count is ${count}`);

ブロックで簡単にステートメントをグループ化することができます。

App.svelte
$: {
	console.log(`the count is ${count}`);
	console.log(`this will also be logged whenever count changes`);
}

if ブロックなどの前に $: を置くこともできます。

App.svelte
$: if (count >= 10) {
	alert('count is dangerously high!');
	count = 0;
}

Next: Updating arrays and objects

1
2
3
4
5
6
7
8
9
10
11
12
13
<script>
	let count = 0;
 
	function handleClick() {
		count += 1;
	}
</script>
 
<button on:click={handleClick}>
	Clicked {count}
	{count === 1 ? 'time' : 'times'}
</button>
 
initialising