序文: コンポーネントのテンプレートの一部が論理的にはそのコンポーネントに属している場合もありますが、技術的な観点からは、テンプレートのこの部分を Vue アプリ外の シナリオ例:クリックするとモーダルダイアログボックスを開く このモーダル ダイアログ ボックスのビジネス ロジックの場所は間違いなくこの これにより問題が発生します。コンポーネントの論理的な位置が これまでの 1. テレポートの使用使い方は非常に簡単です。コンポーネントを目的の位置にレンダリングするには、to 属性を使用するだけです。 // body タグにレンダリングします <teleport to="body"> <div class="modal"> 私はテレポートしたモーダルです! </div> </テレポート> 以下も使用できます: <teleport to="#some-id" /> <teleport to=".some-class" /> <teleport to="[data-teleport]" /> 有効なクエリセレクターまたは さらに遠く 2. モーダルダイアログコンポーネントを完成させるでは、標準のモーダルダイアログボックスをカプセル化してみましょう <テンプレート> <テレポート先="body"> <トランジション名="ダイアログフェード"> <div class="dialog-wrapper" v-show="visible"> <div class="ダイアログ"> <div class="ダイアログヘッダー"> <スロット名="タイトル"> <span class="ダイアログタイトル"> {{ タイトル }} </span> </スロット> </div> <div class="ダイアログボディ"> <スロット></スロット> </div> <div class="ダイアログフッター"> <スロット名="フッター"> <button @click="onClose">閉じる</button> </スロット> </div> </div> </div> </トランジション> </テレポート> </テンプレート> <スクリプト> 'vue' から defineComponent をインポートします。 エクスポートデフォルトdefineComponent({ 名前: 'tdialog' }); </スクリプト> <スクリプトの設定> const props = defineProps({ タイトル: 文字列、 表示: ブール値 }); const 出力 = defineEmits(['close']); 定数 onClose = () => { 出力('閉じる'); }; </スクリプト> 使用する際は、 <t-dialog title="LGD は無敵です" :visible="visible" @close="onClose"> これはコンテンツの一部です、Xiaose Xianbei。 </t-ダイアログ> // ... const 可視 = ref(false); 定数onDialog = () => { 表示される値 = !表示される値; }; 定数 onClose = () => { 表示値 = false; }; さらに一歩進んで 3. コンポーネントのレンダリング上記で、標準のモーダル ダイアログ コンポーネントが完成しました。少量のテキストのみを表示する、同様の軽量プロンプト コンポーネント 上記の例では、 // プロンプトを呼び出します Message({ message: 'This is a Message' }); 関数を使用して呼び出す場合は、この関数を準備する必要があります。この関数の機能は、コンポーネントのレンダリングを完了することです。 const メッセージ = オプション => { // コンテナをレンダリングする準備をする const container = document.createElement('div'); // vnode を生成する const vnode = createVNode(メッセージコンストラクタ、オプション); // レンダリングレンダー(vnode, コンテナ); };
<テンプレート> <テレポート先="#app"> <transition name="メッセージフェード"> <div v-show="visible" ref="ins" class="message" :style="customStyle">{{ メッセージ }}</div> </トランジション> </テレポート> </テンプレート> オンライン体験 コードを表示 要約: 以上が、私たちに多くの利便性を提供してくれる 以下もご興味があるかもしれません:
|
<<: スライドドアを実装するための CSS サンプルコード
>>: dockerコンテナにviコマンドをインストールする簡単な操作
1. シナリオ表示Tomcat ログに次の例外情報が時々報告されます。何が起こっているのでしょうか...
効果: タイトルには独自のシリアル番号があり、コードブロックには配色があり、コードブロックの左上隅に...
ログイン認証にトークンを使用する考え方は次のとおりです。 1. 初めてログインする場合、フロントエン...
導入MySQL には、SELECT ステートメントを分析し、開発者が最適化できるように SELECT...
1. MYSQLインデックスインデックス: MySQL がデータを効率的に取得するのに役立つデータ構...
目次現象根本原因分析getLastPacketReceivedTimeMs() メソッドの呼び出し時...
目次1. 概要2. dockerを使用してTomcatをデプロイし、Skywalkingに接続する要...
Linuxファイルを表示する方法ファイルの内容を表示するコマンド: catは最初の行からコンテンツを...
この記事では、JavaScriptでカルーセルを実装するための具体的なコードを参考までに紹介します。...
次のように、Win10 での 2 つの MySQL5.6.35 データベースのインストールを記録しま...
目次抽象化と再利用シリアルセグメントシリアル、セグメントパラレル要約するはじめに: JS は当然並列...
Windows 7 で MySQL 5.7.17 をインストールする方法についてのグラフィック チ...
<br />では、CSS 構文を巧みに使用してテーブルを美しくする方法を見てみましょう。...
目次序文Axiosのインストールと設定シンプルなGETリクエストを開始するPOSTリクエストを行うシ...
この記事の例では、ドロップダウンメニューのカプセル化を実装するためのVue + Element UI...