Vue デフォルトスロットの理解とサンプルコード

Vue デフォルトスロットの理解とサンプルコード

スロットとは何か

スロットは、親コンポーネントに提供される子コンポーネントのプレースホルダーで、<slot></slot> で表されます。親コンポーネントは、HTML、コンポーネントなどの任意のテンプレート コードをこのプレースホルダーに入力できます。入力されたコンテンツは、子コンポーネントの <slot></slot> タグを置き換えます。

デフォルトスロットの理解

完全なタグ()を使用して、対応する構成を完全なタグで記述します(たとえば、必要な機能など)。

次に、デフォルトのスロットタグを使用して、書き込まれたコンテンツをこのスロットに配置します(このスロットは通常、子コンポーネントに存在するため、親コンポーネントが書き込んだ内容を子コンポーネントに渡すことができます)。

完全なタグに記述された構成スタイルについては、親コンポーネントと子コンポーネントの両方に記述できます (1. 親コンポーネントにスタイルが記述されている場合、スタイルはレンダリングされてから子コンポーネントに配置されます。2. 子コンポーネントにスタイルが記述されている場合、構成はスロットに配置され、スロットが配置されている子コンポーネントには構成をレンダリングする CSS スタイルがあるため)。

コードスニペット

①カテゴリー.vue

<テンプレート>
  <div class="カテゴリ">
    <h3>{{ title }}カテゴリー</h3>

    <!-- デフォルトのスロットを定義すると、App.vue 内の対応するコンポーネント タグのタグ本体のコンテンツがこのスロットに配置されます -->
    <スロット></スロット>
  </div>
</テンプレート>

<スクリプト>
エクスポートデフォルト{
  名前:「カテゴリー」、
  プロパティ: ["タイトル"],
};
</スクリプト>

<スタイル>
.カテゴリー{
  背景色: スカイブルー;
  幅: 200ピクセル;
  高さ: 300px;
}
h3 {
  テキスト配置: 中央;
  背景色: オレンジ;
}
</スタイル>

②App.vue

<テンプレート>
  <div class="コンテナ">
    <カテゴリータイトル="食品">
      <画像
        src="https://zqcdn.itzjj.cn/static/skin/mfw0321/static/picture/dj_scv.jpg"
        代替案 = "1"
      />
    </カテゴリー>
    <Category title="ゲーム" :listData="ゲーム">
      <ul>
        <!-- この時点では変数はapp.vue内に直接格納されているので、ゲームを直接走査することができます。
        トラバース後、スロット関数を使用してCategory.vueに渡します -->
        <li v-for="(g, index) ゲーム内" :key="index">
          {{g}}
        </li>
      </ul></カテゴリー
    >

    <Category title="映画" :listData="films">
      <!-- コントロールによりビデオを再生できます -->
      <ビデオ
        コントロール
        src="http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4"
      </ビデオ>
    </カテゴリー>
  </div>
</テンプレート>

<スクリプト>
「./components/Category」からカテゴリーをインポートします。

エクスポートデフォルト{
  名前:「アプリ」、
  コンポーネント: { カテゴリ },
  データ() {
    戻る {
      食べ物: ["火", "あなたの肉", "ミートボール"],
      ゲーム: ["Red Alert Online"、"Cross Fire"、"Audition"]、
      映画: [「ゴッドファーザー」、「ショックウェーブ」、「オーサム」]、
    };
  },
};
</スクリプト>

<スタイル>
。容器 {
  ディスプレイ: フレックス;
  コンテンツの両端揃え: スペースを空ける;
}

ビデオ
  幅: 100%;
}

画像 {
  幅: 100%;
}
</スタイル>

要約する

これで、vue デフォルト スロットに関するこの記事は終了です。vue デフォルト スロットに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Vue の匿名スロットと名前付きスロットの詳細な説明
  • Vue 名前付きスロットの基本的な使用例
  • Vue はスロットを使用してコンテンツを配布します。操作例 [単一スロット、名前付きスロット、スコープ付きスロット]
  • Vue の匿名スロット、名前付きスロット、スコープ付きスロットの使い方の詳細な説明
  • Vue.js スロットにおけるスコープ付きスロットの使用法の詳細な説明
  • VUE のコンパイル スコープとスロット スコープのスロットの問題について
  • Vueスコープスロットの実装方法と機能の詳しい説明
  • Vue のデフォルト スロット、名前付きスロット、スコープ スロットの定義と使用方法

<<:  docker を使用して minio と java sdk を構築するプロセスの詳細な説明

>>:  Docker で MySQL をデプロイする詳細なプロセス (Docker でデプロイされる一般的なアプリケーション)

推薦する

JS で if 判定をスムーズに行う方法

目次序文コードの実装アイデア 1アイデア2要約する参照ドキュメント序文プロジェクト内の小さな要件ポイ...

Mysql8.0はソート問題を解決するためにウィンドウ関数を使用する

MySQL ウィンドウ関数の紹介MySQL は MySQL 8.0 以降、ウィンドウ関数をサポートし...

nginxのインストールと設定の詳細なプロセス記録

目次1 nginxの紹介1 nginxとは何か2 つのアプリケーション シナリオ2 nginxのイン...

MySQLの明示的な型変換の簡単な分析

CAST関数前回の記事では、型変換を表示するために使用する CAST 関数について説明しました。暗黙...

MySQL データベースのバックアップとリカバリの実装コード

データベースのバックアップ #文法: # mysqldump -h server-u usernam...

XHTML におけるタイトルタグと段落タグの使用に関する詳細な説明

XHTML 見出しの概要Word 文書を作成するときは、「第 1 章」、「1.2.1」などのタイトル...

JavaScript で二分探索木を実装する

JavaScriptでの検索二分木実装は参考までに。具体的な内容は以下のとおりです。バイナリ検索木 ...

js における浅いコピーと深いコピーの詳細な説明

目次1. jsメモリ2. 譲渡3. 浅いコピー4. ディープコピー序文:以下の記事を読む前に、記憶に...

MySQL 8.0.16 winx64 のインストールと設定方法のグラフィックチュートリアル

最近、データベースについて学び始めました。最初にやったことは、データベースとは何か、データベースとデ...

MySQL パフォーマンス ストレス ベンチマーク ツール sysbench の使い方の紹介

目次1. sysbenchの紹介#プロジェクトダウンロードアドレス: 2. Sysbenchのインス...

MySQL の lru リンク リストの簡単な分析

1. 従来のLRUリンクリストについて簡単に説明するLRU:最も最近使われなかったものLRU リンク...

ウェブデザインのためのロイヤルブルーのカラーマッチング入門

古典的な色の組み合わせは力と権威を伝え、強いロイヤルブルーはあらゆる古典的な色の組み合わせの中心的な...

CentOS 6-7 PHPのyumインストール方法(推奨)

1. 現在インストールされているPHPパッケージを確認するyum list installed |...

MySQL 5.6.36 Windows x64 バージョンのインストールチュートリアルの詳細

1. 対象環境Windows 7 64ビット2. 材料(1)VC++2010リリースパッケージ(64...

ReactのEffectListの簡単な分析

目次EffectList コレクション最初のレンダリング時のEffectList EffectLis...