問題の説明プロジェクトに取り組んでいるときに、タブ バーの切り替え効果を作成する必要がある場合があります。タブが 2 つあるものもあれば、3 つあるもの、さらには 5 つ、6 つ、7 つ、8 つあるものもあります。通常は、Ele.me のタブ コンポーネントを使用するだけですが、時間があるときには、2 つのタブを切り替える、つまり 2 つの選択肢の効果を実現するタブ コンポーネントを作成することもあります。雑談はここまでにして、ダイナミックレンダリングを見てみましょう このケースは2つのタブに適しています(3つのタブも私のように記述できます。4つまたは5つのタブがある場合は、Ele.meコンポーネントを使用する方が高速です) コードは次のとおりですHTML部分 <テンプレート> <div id="アプリ"> <div class="tabWrap"> <!-- この構造はタブナビゲーションであり、対応するクリックイベントがこれにバインドされています。クリックイベントのコールバックでは、対応するコンテンツの表示と非表示、スタイルの変更、つまりタブの切り替えが制御されます--> <div class="tabNav"> <div class="navOne" @click="tabOne">タブ1</div> <div class="navTwo" @click="tabTwo">タブ2</div> </div> <!-- この構造はタブナビゲーションに対応するコンテンツです--> <div class="tabContent"> <!-- v-show を使用して非表示を制御し、1 つを非表示にして 1 つを同時に表示することで、タブ バーの切り替え効果が得られます --> <div class="navOneBox" v-show="showTabOne">切り替え中 1</div> <div class="navTwoBox" v-show="showTabTwo">私はtab2です</div> </div> </div> </div> </テンプレート> js部分 <スクリプト> エクスポートデフォルト{ 名前:「アプリ」、 データ() { 戻る { showTabOne: true, // 切り替える 2 つのタブのうち 1 つを選択します。 showTabTwo: false, // 切り替える 2 つのタブのうち 1 つを選択します。 }; }, メソッド: { // 2つのタブバースイッチのうち1つを選択します tabOne() { /* tab1をクリックすると、tab1が表示され、tab2が非表示になります。つまり、showTabOneはtrue、showTabTwoはfalseです。 同時に、tab1 のスタイルを「強調表示」するように変更し、tab2 のスタイルを「強調表示解除」するように変更することを忘れないように注意してください。 tab2 をクリックした場合も同様です。 */ タブのタイトルを true に設定します。 this.showTabTwo = false; document.querySelector(".navOne").style.backgroundColor = "#fff"; document.querySelector(".navTwo").style.backgroundColor = "#e3e3e3"; document.querySelector(".navOne").style.color = "#3985EC"; document.querySelector(".navTwo").style.color = "#80868D"; }, // 2つのタブバーの切り替えのいずれかを選択します tabTwo() { this.showTabTwo = true; this.showTabOne = false; document.querySelector(".navOne").style.backgroundColor = "#e3e3e3"; document.querySelector(".navTwo").style.backgroundColor = "#fff"; document.querySelector(".navTwo").style.color = "#3985EC"; document.querySelector(".navOne").style.color = "#80868D"; }, }, }; </スクリプト> CSS部分 <スタイル lang="less"> .tabNav { 幅: 126ピクセル; 高さ: 30px; 境界線の半径: 2px; 背景色: #e3e3e3; ディスプレイ: フレックス; アイテムの位置を中央揃えにします。 コンテンツの均等配置: スペースを均等に; .navOne{ 幅: 60ピクセル; 高さ: 26px; 境界線の半径: 2px; 背景色: #fff; 色: #3985ec; フォントサイズ: 14px; フォントの太さ: 500; ディスプレイ: フレックス; コンテンツの中央揃え: 中央; アイテムの位置を中央揃えにします。 カーソル: ポインタ; } .navTwo { 幅: 60ピクセル; 高さ: 26px; 色: #80868d; 境界線の半径: 2px; フォントサイズ: 14px; フォントの太さ: 500; ディスプレイ: フレックス; コンテンツの中央揃え: 中央; アイテムの位置を中央揃えにします。 カーソル: ポインタ; } } .tabコンテンツ{ 上マージン: 8px; .navOneBox { 背景色: #bfa; } .navTwoBox { 背景色: #baf; } } </スタイル> Vue の 2 択タブバー切り替えの新しい実装に関するこの記事はこれで終わりです。Vue タブバー切り替えに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: proxy_pass がパス パスに従って転送する場合の "/" 問題の詳細な説明
例示するフロントエンド開発では、セルの幅を制限し、コンテンツが制限を超える部分に省略記号を表示する必...
簡単に言えば、ウェブサイト構築とは、「この人はどんな外見をしているのか」と「この人はどんな内面を持っ...
目次1.ダウンロード後、インストールしたいディレクトリに解凍します。 2. インストールディレクトリ...
1. ノードサーバーのセットアップ + データベース接続ここでの操作は比較的簡単でわかりやすいです。...
join() メソッド: 指定された区切り文字を使用して配列内のすべての要素を文字列に接続します。例...
目次環境CentOSをインストールするyum 国内ミラーソースを構成するサードパーティの依存関係をイ...
序文MySQL データベース ロックは、データの一貫性を実現し、同時実行性の問題を解決するための重要...
目次vue2.xプレコンセプト:ルーティングフックのカテゴリルーティングとコンポーネントの概念(フッ...
目次概要Canvas API: グラフィックスの描画パス線種矩形アーク文章グラデーションと画像の塗り...
環境準備:複数のコンテナに基づいてホストに lnmp をデプロイします。 nginx サービス: 1...
mysql-5.7.9 では、ついにシャットダウン構文が提供されます。以前は、MySQL データベー...
スクリーン リーダー ソフトウェアの操作ページについて話しているとき、彼はフロントエンドの学生たちに...
この記事では、マウスを動かしたときにセカンダリ メニュー バーを実装するために HTML+CSS を...
MySql Nullフィールド判定とIFNULL失敗処理ps: (プロセスを表示したくない場合は、S...
この記事の例では、両端キューを実装するためのJavaScriptの具体的なコードを参考までに共有して...