Sveltejs Academy · レッスン

$$slotsによるスロットコンテンツの確認

$$slotsを確認し、スロットが使用されている場合だけラッパーのマークアップを条件付きでレンダリングします。

レッスン 4/413 ステップ

「$$slotsによるスロットコンテンツの確認」はCoddyKit上の無料Sveltejs Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはSveltejs Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Sveltejs Academyコースには全4レッスンが含まれています。

スロットをチェックする理由

スロットにコンテンツがある場合にだけ、枠線やヘッダーなどのラッパー用マークアップを表示したいことがあります。

slots オブジェクト

コンポーネント内では、$$slots は埋められた各スロットに対応するプロパティを持つオブジェクトです。

埋められると truthy になる

スロットにコンテンツがある場合、$$slots 内のそのキーは truthy になります。

{#if $$slots.title}<h2><slot name="title" /></h2>{/if}

空のラッパーを避ける

スロットが空の場合はラッパー用マークアップの描画を省略し、DOM をすっきり保ちます。

デフォルトとの組み合わせ

フォールバックコンテンツを表示するか、ラッパー全体を省略するかを選択できます。

リアクティブな検出

再レンダリングの間にスロットの内容が変わると、$$slots もリアクティブに更新されます。

複数のスロットで使う

各名前付きスロットを個別にチェックしてください。

{#if $$slots.header || $$slots.footer}...

カードでよく使われる

タイトルやフッターが任意のカードでは、このパターンがよく使われます。

デフォルトスロットのキー

デフォルトスロットは $$slots.default の下に現れます。

{#if $$slots.default}<div class="body"><slot /></div>{/if}

TypeScript

TypeScript では $$Slots 型を宣言すると、$$slots のオートコンプリートを利用できます。

トレードオフ

マークアップに分岐が追加されますが、よりクリーンな出力になります。デザインシステムでは、その価値があります。

確認問題

$$slots.header は何をチェックしますか?

復習

$$slots.name を使って親コンポーネントがスロットを埋めたかどうかを検出し、埋めていない場合はラッパー用マークアップを省略します。

無料で開始

AI チューターと学ぶ HTML — 無料

ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。

コース
41
レッスン
163

よくある質問

「$$slotsによるスロットコンテンツの確認」レッスンは無料ですか?

はい。「$$slotsによるスロットコンテンツの確認」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Sveltejs Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Sveltejs Academyコースには全4レッスンが含まれています。

「$$slotsによるスロットコンテンツの確認」で何を学びますか?

$$slotsを確認し、スロットが使用されている場合だけラッパーのマークアップを条件付きでレンダリングします。 ブラウザで直接実行するハンズオンコードでSveltejs Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Sveltejs Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのSveltejs Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。

「$$slotsによるスロットコンテンツの確認」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このSveltejs Academyレッスンでコードを書いて実行できますか?

はい。すべてのSveltejs Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. コンテンツ投影のためのデフォルトスロット
  2. slot="name"による名前付きスロット
  3. スロットのフォールバックコンテンツ
  4. $$slotsによるスロットコンテンツの確認
← Sveltejs Academyに戻る