svelte-runes について
svelte-runesは、Svelte Runesを使う開発者向けのリファレンススキルです。runeの選び方やコンポーネントのパターン、よくあるミス、リアクティビティのデバッグ方法を説明します。
主な機能
- 01各runeの役割の説明
- 02リアクティビティパターンの解説
- 03コンポーネントAPIパターン
- 04ミスと修正方法の一覧
- 05リアクティビティのデバッグ案内
活用シーン
- 01状態や派生値に使うruneの選択
- 02コンポーネントのpropsとバインディングの実装
- 03リアクティビティの問題の調査
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ spences10/ skills --skill svelte-runesインストール後、Claude Code で/svelte-runesを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
examples/bindable-props.svelteeffect-vs-derived.sveltereferences/common-mistakes.mdcomponent-api.mdreactivity-patterns.mdsnippets-vs-slots.md詳細
Svelte Runes
クイックスタート
どの rune を使いますか? プロパティ:$props() | バインド可能:$bindable() |
計算値:$derived() | 副作用:$effect() | 状態:$state()
主なルール: rune はトップレベルでのみ使用できます。$derived は上書きできます
(読み取り専用にする場合は const を使用してください)。オブジェクトや配列はデフォルトで深くリアクティブになります。データ全体を置き換える場合は $state.raw を使用してください。
例
<script>
let count = $state(0); // Mutable state
const doubled = $derived(count * 2); // Computed (const = read-only)
$effect(() => {
console.log(`Count is ${count}`); // Side effect
});
</script>
<button onclick={() => count++}>
{count} (doubled: {doubled})
</button>
リファレンスファイル
- reactivity-patterns.md - 各 rune の使い分け
- component-api.md - $props、$bindable の パターン
- snippets-vs-slots.md - 新しい snippet 構文
- common-mistakes.md - 修正方法とともに よくあるアンチパターンを紹介
@attachやその他のテンプレートディレクティブについては、 svelte-template-directives スキルを参照してください。
注意事項
- レイアウトでは、
onclickなどのイベントプロパティと{@render children()}を使用してください $derivedは再代入できます(5.25+)。読み取り専用にする場合はconstを使用してください- 型安全性を確保するには、
setContext/getContextよりcreateContextを使用してください - リアクティビティの問題のデバッグには
$inspect.traceを使用してください - 複数行の派生値には
$derived.byを優先してください $effect内での状態更新は避けてください。エフェクトは回避策として使用します- エフェクトはサーバー上では実行されません。エフェクトの本体を
if (browser)で囲まないでください - 最終確認日: 2026-05-14
コメント
Markdown 対応