Vue のスロットについて学ぶ
Vue スロットは Vue を学ぶ上で欠かせない部分ですが、私が初めて Vue に触れたとき、特にスコープ スロットについては少ししか理解していませんでした。
その後、スロットがますます便利であることがわかりました。
スロットに関する知識を共有しましょう。
1. スロットのコンテンツ
一文: スロットには任意のコンテンツを含めることができます。
まず、次のコードを見てください: 子コンポーネント コンポーネントを宣言します。
<div id="app"> <child-component></child-component> </div> <script> Vue.component('child-component',{ template:` <div>Hello,World!</div> ` }) let vm = new Vue({ el:'#app', data:{ } }) </script>
<child-component>你好</child-component>
出力内容はコンポーネント内の内容のままであり、
ここで、
現在は、
Vue.component('child-component',{ template:` <div> Hello,World! <slot></slot> </div> ` })
これで、スロットとは何かが分かりました:
スロットは、Vue によって実装されたコンテンツ配布 API のセットであり、
この文が意味するのは、スロットがない場合、コンポーネントタグ内の一部の内容は何の効果も持たないということです。コンポーネント内でスロット要素を宣言すると、コンポーネント要素に書かれた内容が中はそれに行きます!
2. 名前付きスロット
名前付きスロットは、スロットに名前を付けるものです
コンポーネント内で、スロットに名前を付けます。名前は3つあり、1つは「女の子」、1つは「男の子」、そして1つは名前がありません。
名前のないスロットはデフォルトのスロットです。 !
<div id="app"> <child-component> <template slot="girl"> 漂亮、美丽、购物、逛街 </template> <template slot="boy"> 帅气、才实 </template> <div> 我是一类人, 我是默认的插槽 </div> </child-component> </div> <script> Vue.component('child-component',{ template:` <div> <h4 id="这个世界不仅有男人和女人">这个世界不仅有男人和女人</h4> <slot name="girl"></slot> <div style="height:1px;background-color:red;"></div> <slot name="boy"></slot> <div style="height:1px;background-color:red;"></div> <slot></slot> </div> ` }) let vm = new Vue({ el:'#app', data:{ } }) </script>
3. スコープ スロット
スコープ スロットが何なのか、これまで全く理解していませんでした。 ! !
率直に言うと、これはコンポーネント上の私の属性であり、コンポーネント要素内で使用できます。
最初に最も単純な例を見てみましょう。 !
という名前を付けて、 a を出力すると、それが {"say" : "Hello"} であることがわかります。これは、スロットの属性と値で構成されるキーと値のペアです。 ! !
これはスコープ スロットです。
コンポーネントの属性/値をコンポーネント要素で使用できるようになりました。 !
<div id="app"> <child> <template slot-scope="a"> <!-- {"say":"你好"} --> {{a}} </template> </child> </div> <script> Vue.component('child',{ template:` <div> <slot say="你好"></slot> </div> ` }) let vm = new Vue({ el:'#app', data:{ } }) </script>
次の例をもう一度見てください:
<div id="app"> <child :lists="nameList"> <template slot-scope="a"> {{a}} </template> </child> </div> <script> Vue.component('child',{ props:['lists'], template:` <div> <ul> <li v-for="list in lists"> <slot :bbbbb="list"></slot> </li> </ul> </div> ` }) let vm = new Vue({ el:'#app', data:{ nameList:[ {id:1,name:'孙悟空'}, {id:2,name:'猪八戒'}, {id:3,name:'沙和尚'}, {id:4,name:'唐僧'}, {id:5,name:'小白龙'}, ] } }) </script>
出力結果を見てください
##関連する推奨事項:プログラミング関連の知識については、
プログラミング入門をご覧ください。 !
以上がVue のスロットについて学ぶの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック

vue.jsでJSファイルを参照するには3つの方法があります。タグ;; mounted()ライフサイクルフックを使用した動的インポート。 Vuex State Management Libraryを介してインポートします。

CSSアニメーションまたはサードパーティライブラリを使用して、VUEでマーキー/テキストスクロール効果を実装します。この記事では、CSSアニメーションの使用方法を紹介します。スクロールテキストを作成し、テキストを&lt; div&gt;をラップします。 CSSアニメーションを定義し、オーバーフローを設定します:非表示、幅、アニメーション。キーフレームを定義し、アニメーションの開始と終了時にtranslatex()を設定します。期間、スクロール速度、方向などのアニメーションプロパティを調整します。

Vue.jsでは、Lazy Loadingを使用すると、コンポーネントまたはリソースを必要に応じて動的にロードすることができ、初期ページの読み込み時間を短縮し、パフォーマンスを改善できます。特定の実装方法には、&lt; Keep-Alive&gt;および&lt;コンポーネントは&gt;コンポーネント。怠zyなロードは、FOUC(スプラッシュ画面)の問題を引き起こす可能性があり、不必要なパフォーマンスのオーバーヘッドを避けるために怠zyなロードが必要なコンポーネントにのみ使用する必要があることに注意してください。

vue.jsでBootstrapを使用すると、5つのステップに分かれています。ブートストラップをインストールします。 main.jsにブートストラップをインポートしますブートストラップコンポーネントをテンプレートで直接使用します。オプション:カスタムスタイル。オプション:プラグインを使用します。

Vue.jsの監視オプションにより、開発者は特定のデータの変更をリッスンできます。データが変更されたら、Watchはコールバック関数をトリガーして更新ビューまたはその他のタスクを実行します。その構成オプションには、すぐにコールバックを実行するかどうかを指定する即時と、オブジェクトまたは配列の変更を再帰的に聴くかどうかを指定するDEEPが含まれます。

Vue Devtoolsを使用してブラウザのコンソールでVueタブを表示することにより、Vueバージョンを照会できます。 NPMを使用して、「NPM List -G Vue」コマンドを実行します。 package.jsonファイルの「依存関係」オブジェクトでVueアイテムを見つけます。 Vue CLIプロジェクトの場合、「Vue -Version」コマンドを実行します。 &lt; script&gt;でバージョン情報を確認してくださいVueファイルを参照するHTMLファイルにタグを付けます。

Vueコンポーネントの合格値は、コンポーネント間でデータと情報を渡すメカニズムです。プロパティ(小道具)またはイベントを介して実装できます:プロップ:コンポーネントで受信するデータを宣言し、親コンポーネントにデータを渡します。イベント:$ EMITメソッドを使用して、VONディレクティブを使用してイベントをトリガーし、親コンポーネントでイベントを聞きます。

vue.jsには、前のページに戻る4つの方法があります。$ router.go(-1)$ router.back()outes&lt; router-link to =&quot;/&quot; Component Window.history.back()、およびメソッド選択はシーンに依存します。
