mcpField
S
svelte-template-directives

svelte-template-directives

github.com/spences10開発94491 回インストール2 週間前に更新
リポジトリ

svelte-template-directives について

Svelte開発者向けのテンプレートディレクティブ参照スキルです。Svelte 5のattachmentsと従来のactionsとの違いを中心に、リアクティブなDOM操作やディレクティブの確認を支援します。

主な機能

  1. 01Svelteディレクティブのクイックリファレンス
  2. 02リアクティブな@attachの使用パターン
  3. 03use:アクションとの比較
  4. 04従来のアクションを変換する指針
  5. 05eachブロックのキー指定に関する注意

活用シーン

  1. 01リアクティブなDOM操作の追加
  2. 02サードパーティ製DOMライブラリの統合
  3. 03従来のアクションからattachmentsへの変換
  4. 04Svelteテンプレートディレクティブの確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/spences10/svelte-skills-kit --skill svelte-template-directives

インストール後、Claude Code で/svelte-template-directivesを入力して読み込まれたか確認します。

同梱ファイルreferences/attach-patterns.mdreferences/other-directives.md

詳細

Svelte テンプレートディレクティブ

@attach(Svelte 5.29 以降)

use: アクションに代わるリアクティブな方法です。 依存関係が変化すると再実行され、スプレッドを介してコンポーネントに受け渡され、クリーンアップ関数にも対応しています。

<script>
	import ImageZoom from 'js-image-zoom';

	function useZoom(options) {
		return (element) => {
			new ImageZoom(element, options);
			return () => console.log('cleanup');
		};
	}
</script>


<figure {@attach useZoom({ width: 400 })}>
	<img src="photo.jpg" alt="zoomable" />
</figure>

クイックリファレンス

ディレクティブ用途リアクティブ?
{@attach}DOM 操作、サードパーティ製ライブラリはい
{@html}生の HTML 文字列をレンダリングはい
{@render}スニペットをレンダリングはい
{@const}ブロック内のローカル定数該当なし
{@debug}値の変化時にデバッガーを一時停止該当なし
{#each (key)}キー付き反復(必ずキーを指定!)はい
<svelte:window>ウィンドウのイベントリスナー該当なし

@attach と use: アクションの比較

機能use:@attach
引数の変更時に再実行いいえはい
合成可能限定的完全対応
プロパティの受け渡し手動スプレッドで自動
レガシー形式の変換該当なしfromAction()

リファレンスファイル

メモ

  • @attach には Svelte 5.29 以降が必要です
  • レガシーアクションを変換するには、svelte/attachments の fromAction を使用します
  • プロパティをスプレッドすると、アタッチメントはラッパーコンポーネントを介して受け渡されます
  • each ブロックでは必ずキーを使用し、インデックスをキーとして使用しないでください
  • グローバルイベントには $effect ではなく、<svelte:window>/<svelte:document> を使用します
  • 最終確認日: 2026-03-12

コメント