亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

目次
概要
ホームページ ウェブフロントエンド jsチュートリアル vue.jsでCSSクラスを條件付きに適用する方法

vue.jsでCSSクラスを條件付きに適用する方法

Feb 14, 2025 am 09:46 AM

vue.js

でのCSSクラスの條件付きアプリケーションの方法の詳細な説明

コアポイント:

    Vue.jsでは、cssクラスの條件付きアプリケーションを
  • 屬性に結(jié)合することにより実裝できます。オブジェクトの屬性はCSSクラス名に対応し、その値はクラスを適用するかどうかを決定するJavaScript式です。 class
  • vue.jsは、2つの構(gòu)文を提供して、クラスバインディングを作成します。オブジェクト構(gòu)文と配列構(gòu)文。オブジェクトの構(gòu)文はより簡潔になりますが、配列構(gòu)文はテンプレートコードをより明確にする場合があります。選択する文法は、個人的な好みに依存します。
  • Vue.jsは、3次演算子、オブジェクト構(gòu)文を使用して複數(shù)のクラスをバインドする、計算されたプロパティを使用し、靜的クラスとバインディングクラスを組み合わせたもの、條件付きバインディングインラインスタイルなど、條件クラスの複數(shù)の結(jié)合方法をサポートしています。
実行時に変更する必要があるCSSクラスがあります。しかし、クラスを変更するときは、スタイルの詳細を條件付きで適用することが最適です。たとえば、ビューにポケットベルがあるとします。多くの場合、より大きなプロジェクトセットをナビゲートするために使用されます。ナビゲートするときは、ユーザーが現(xiàn)在のページに情報を表示するのに役立ちます。プロジェクトスタイルは、現(xiàn)在表示されているページに従って條件付きで設定されています。この場合、ポケットベルは次のようになるかもしれません:

How to Conditionally Apply a CSS Class in Vue.js この例には5ページがあり、一度に1ページのみを選択できます。このポケットベルをBootstrapで構(gòu)築すると、選択したページには

という名前のCSSクラスが適用されます。このクラスは、ページが現(xiàn)在表示されている場合にのみ必要です。つまり、CSSクラスを條件付きで適用する必要があります。幸いなことに、Vueは実行時にCSSクラスを要素に條件付きで適用する方法を提供します。これについては、この記事で説明します。

active実行時にCSSクラスを條件付きに適用するには、JavaScriptオブジェクトにバインドできます。このタスクを正常に完了するには、2つのステップを完了する必要があります。まず、CSSクラスが定義されていることを確認する必要があります。次に、テンプレートにクラスバインディングを作成します。これらの手順については、この記事の殘りの部分で詳しく説明します。 active

ステップ1:CSSクラスを定義します

How to Conditionally Apply a CSS Class in Vue.js

上記の畫像に表示されている5ページのアイテムが次のHTML定義を使用していると仮定します。

このコードスニペットの各ページには、リスト項目要素があることに注意してください(3番目のリストアイテム要素にはクラスがあります)。ご想像のとおり、これは條件付きで適用したいCSSクラスです。これを行うには、JavaScriptオブジェクトを追加する必要があります。

ステップ2:クラスバインディングを作成
<div id="myApp">
  <nav aria-label="Page navigation example">
    <ul class="pagination">
      <li class="page-item"><a class="page-link" href="http://ipnx.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b">1</a></li>
      <li class="page-item"><a class="page-link" href="http://ipnx.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b">2</a></li>
      <li class="page-item active"><a class="page-link" href="http://ipnx.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b">3</a></li>
      <li class="page-item"><a class="page-link" href="http://ipnx.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b">4</a></li>
      <li class="page-item"><a class="page-link" href="http://ipnx.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b">5</a></li>
    </ul>
  </nav>
</div>

activeテンプレートでクラスバインディングを作成する場合、2つの主なオプションがあります。オブジェクトの構(gòu)文を使用するか、配列構(gòu)文を使用します。この記事の殘りの部分で両方の方法を使用する方法を紹介します。

オブジェクトの構(gòu)文を使用した

バインディング オブジェクト構(gòu)文を使用してクラスバインディングを作成するには、JavaScript式を使用する必要があります。使用する表現(xiàn)は、この記事に関連するコードで見ることができます。関連するコードは次のとおりです

<div id="myApp">
  <nav aria-label="Page navigation example">
    <ul class="pagination">
      <li class="page-item"><a class="page-link" href="http://ipnx.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b">1</a></li>
      <li class="page-item"><a class="page-link" href="http://ipnx.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b">2</a></li>
      <li class="page-item active"><a class="page-link" href="http://ipnx.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b">3</a></li>
      <li class="page-item"><a class="page-link" href="http://ipnx.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b">4</a></li>
      <li class="page-item"><a class="page-link" href="http://ipnx.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b">5</a></li>
    </ul>
  </nav>
</div>
Vueの組み込み

ディレクティブを使用して、コードの量を削減します。この指令は、プロジェクトをループでレンダリングするために使用されます。この例のアイテムはページ自體です。 v-forコマンドを使用することに加えて、v-forコマンドの使用にも注意を払う必要があります。 v-bindディレクティブは、要素のv-bind屬性をVUEインスタンスに接続します。 VUEインスタンスは次のように定義されています class

このVueインスタンスは非常に簡単です。上記のオブジェクトには、
<div id="myApp">
  <nav aria-label="An example with pagination">
    <ul class="pagination">
      <li v-for="page in totalPages" :class="{'page-item':true, 'active':(page === currentPage)}">
        <a class="page-link" href="http://ipnx.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b">{{ page }}</a>
      </li>
    </ul>
  </nav>
</div>
という名前のプロパティが含まれています。上記で定義されているHTMLテンプレートを再訪すると、このプロパティが參照されていることに気付くでしょう。実際、各クラスのバインディングに関連付けられたJavaScriptオブジェクトは次のようになります。

このオブジェクトは、2つのプロパティを定義します。これらは、ステップ1で説明されている2つのCSSクラス名であることは注目に値します。ステップ2では、これら2つのクラス參照がJavaScriptオブジェクトのプロパティ名になりました。これらのプロパティ名に関連する値は、JavaScript式です。式が真の値に評価される場合、CSSクラスが含まれます。式がfalseに評価された場合、dataはCSSクラスを含めません。これらのルールを念頭に置いて、各屬性を見てみましょう。最初のプロパティの値currentPage

です。このハードコードされた値は、クラスが常に必要なため、使用されます。 2番目のプロパティ
var app = new Vue({
  el: 'http://ipnx.cn/link/93ac0c50dd620dc7b88e5fe05c70e15bmyApp',
  data: {
    totalPages: 5,
    currentPage: 3
  }
});
は、JavaScript式を使用します。この式が當てはまる場合、

クラスが適用されます。これにより、page-itemの値に応じてactiveクラスを條件付きで適用できます。 クラスを條件付きに適用する別の方法は、配列にバインドすることです。 アレイの構(gòu)文を使用したpage-itemバインディングtrue page-itemVueでは、Arrayにバインディングすることにより、CSSクラスのリストを適用できます。配列構(gòu)文を使用する場合、ステップ1に表示されるHTMLは次のようになります。 active アレイ構(gòu)文を使用したactive実行バージョン。唯一の違いは、アレイがクラスバインディングで使用されることです。この代替案には、Vueのオブジェクトに他の2つのプロパティが存在する必要があります。これらの2つのプロパティは次のとおりです。これらのプロパティを含む更新されたVUE初期化コードは次のとおりです。 currentPage activeご覧のとおり、オブジェクトのサイズは増加しますが、アレイ構(gòu)文を使用すると、テンプレート內(nèi)のコードが少し簡潔になります。オブジェクト構(gòu)文はよりコンパクトです。オブジェクトの構(gòu)文と配列構(gòu)文の選択は、個人の好みに依存します。これらの方法はどちらも、HTMLテンプレートをより複雑にするようです。しかし、実際にはここにはもっとあります。実際、私たちは焦點を分離しています。データ駆動型のテンプレートを作成しています。これにより、アプリケーションが成長するにつれて、ビューがテストを容易にし、維持しやすくなります。 active

概要

この記事があなたに役立つことを願っています。 Vue.jsの詳細については、SitePointで他のVueコンテンツを確認できます。
{'page-item':true, 'active':(page === currentPage)}

data(以下は元のテキストのFAQパーツの擬似オリジナルの作成であり、元の意味を維持しますが、表現(xiàn)を書き直しました) Vue.js條件pageItemClass activeClassでのCSSクラスの適用に関する

<div id="myApp">
  <nav aria-label="An example with pagination">
    <ul class="pagination">
      <li v-for="page in totalPages" :class="[pageItemClass, (page === currentPage) ? activeClass : '']">
        <a class="page-link" href="http://ipnx.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b">{{ page }}</a>
      </li>
    </ul>
  </nav>
</div>
FAQ

條件付きクラスのバインディングに3成分演算子を使用する方法は?

vue.jsでは、條件付きクラスの結(jié)合には三元演算子を使用できます。これは、條件に基づいて2つのクラスを切り替えるためのシンプルで効率的な方法です。例は次のとおりです

<div :class="condition ? 'classA' : 'classB'"></div> この例では、條件が真である場合、條件が誤っている場合、

が適用されます。この條件は、有効なJavaScript式である可能性があります。

classAclassBvue.jsで複數(shù)のクラスを條件付けてバインドするにはどうすればよいですか?

vue.jsは、オブジェクト構(gòu)文を使用して複數(shù)のクラスの條件付きバインディングを許可します。これは、異なる條件に応じて複數(shù)のクラスを適用する必要がある場合に非常に便利です。例は次のとおりです

この例では、

がtrueである場合、

が適用されます。 <div :class="{ 'classA': conditionA, 'classB': conditionB }"></div>

の両方が有効なJavaScript式になります。

conditionAclassAvue.jsでの條件付きクラスバインディングに計算された屬性を使用できますか? conditionBclassB conditionAはい、條件付きクラスバインディングはvue.jsで使用できます。コンピューティングプロパティは、クラスのロジックが複雑であることを決定するときに役立ちます。例は次のとおりです conditionB

vueインスタンスでは、を計算されたプロパティとして定義してください:

この例では、

計算屬性は、そこに定義されている複雑なロジックに基づいてクラス名を返します。

<div :class="computedClass"></div>

vue.jsで靜的クラスとバインドクラスを組み合わせる方法は?

computedClass Vue.jsでは、靜的クラスとバインディングクラスを組み合わせることができます。これは、常に特定のクラスを適用する必要がある場合に非常に便利ですが、條件付きで他のクラスを適用する必要もあります。例は次のとおりです

<div id="myApp">
  <nav aria-label="Page navigation example">
    <ul class="pagination">
      <li class="page-item"><a class="page-link" href="http://ipnx.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b">1</a></li>
      <li class="page-item"><a class="page-link" href="http://ipnx.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b">2</a></li>
      <li class="page-item active"><a class="page-link" href="http://ipnx.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b">3</a></li>
      <li class="page-item"><a class="page-link" href="http://ipnx.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b">4</a></li>
      <li class="page-item"><a class="page-link" href="http://ipnx.cn/link/93ac0c50dd620dc7b88e5fe05c70e15b">5</a></li>
    </ul>
  </nav>
</div>

この例では、は常に適用され、computedClass

はそれぞれ

に従って適用されます。

vue.jsでインラインスタイルを條件付けてバインドするにはどうすればよいですか?

<div :class="['staticClass', { 'classA': conditionA, 'classB': conditionB }]"></div>vue.jsは、オブジェクト構(gòu)文を使用してインラインスタイルの條件付き結(jié)合を許可します。これは、特定のスタイルを條件に応じて適用する必要がある場合に役立ちます。例は次のとおりです

staticClass この例では、classAである場合、classBが真である場合、色は赤く、conditionAが偽の場合、色は青です。同様に、conditionBが真の場合、フォントサイズは12pxの場合、フォントサイズは16pxです。

以上がvue.jsでCSSクラスを條件付きに適用する方法の詳細內(nèi)容です。詳細については、PHP 中國語 Web サイトの他の関連記事を參照してください。

このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當する法的責任を負いません。盜作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

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

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中國語版

SublimeText3 中國語版

中國語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

node.jsでHTTPリクエストを作成する方法は? node.jsでHTTPリクエストを作成する方法は? Jul 13, 2025 am 02:18 AM

node.jsでHTTPリクエストを開始するには、組み込みモジュール、axios、およびnode-fetchを使用する3つの一般的な方法があります。 1.依存関係のない內(nèi)蔵http/httpsモジュールを使用します。これは基本的なシナリオに適していますが、https.get()を使用してデータを取得したり、.write()を介してPOSTリクエストを送信するなど、データステッチとエラーモニタリングの手動処理が必要です。 2.Axiosは、約束に基づいたサードパーティライブラリです。簡潔な構(gòu)文と強力な機能を備えており、非同期/待ち聲、自動JSON変換、インターセプターなどをサポートします。非同期リクエスト操作を簡素化することをお勧めします。 3.Node-Fetchは、約束と単純な構(gòu)文に基づいて、ブラウザフェッチに似たスタイルを提供します

JavaScriptデータ型:プリミティブ対參照 JavaScriptデータ型:プリミティブ対參照 Jul 13, 2025 am 02:43 AM

JavaScriptデータ型は、プリミティブタイプと參照タイプに分割されます。プリミティブタイプには、文字列、數(shù)字、ブール、ヌル、未定義、シンボルが含まれます。値は不変であり、コピーは値を割り當てるときにコピーされるため、互いに影響を與えません。オブジェクト、配列、関數(shù)などの參照タイプはメモリアドレスを保存し、同じオブジェクトを指す変數(shù)は互いに影響します。 TypeofとInstanceOFを使用してタイプを決定できますが、TypeOfNullの歴史的な問題に注意してください。これらの2種類の違いを理解することは、より安定した信頼性の高いコードを書くのに役立ちます。

React vs Angular vs Vue:どのJSフレームワークが最適ですか? React vs Angular vs Vue:どのJSフレームワークが最適ですか? Jul 05, 2025 am 02:24 AM

どのJavaScriptフレームワークが最良の選択ですか?答えは、あなたのニーズに応じて最も適切なものを選択することです。 1.反応は柔軟で無料で、高いカスタマイズとチームアーキテクチャ機能を必要とする中規(guī)模および大規(guī)模プロジェクトに適しています。 2。Angularは、エンタープライズレベルのアプリケーションと長期的なメンテナンスに適した完全なソリューションを提供します。 3. Vueは使いやすく、中小規(guī)模のプロジェクトや迅速な発展に適しています。さらに、既存のテクノロジースタック、チームサイズ、プロジェクトのライフサイクル、およびSSRが必要かどうかは、フレームワークを選択する上で重要な要素でもあります。要するに、絶対に最良のフレームワークはありません。最良の選択は、あなたのニーズに合ったものです。

JavaScript Timeオブジェクト、誰かがEACTEXE、Google Chromeなどのより高速なWebサイトを構(gòu)築します。 JavaScript Timeオブジェクト、誰かがEACTEXE、Google Chromeなどのより高速なWebサイトを構(gòu)築します。 Jul 08, 2025 pm 02:27 PM

こんにちは、JavaScript開発者!今週のJavaScriptニュースへようこそ!今週は、DenoとのOracleの商標紛爭、新しいJavaScript Timeオブジェクトがブラウザ、Google Chromeアップデート、およびいくつかの強力な開発ツールによってサポートされています。始めましょう! 「JavaScript」の商標を登録しようとするDeno Oracleの試みとのOracleの商標紛爭は、論爭を引き起こしました。 Node.jsとDenoの作成者であるRyan Dahlは、商標をキャンセルするために請願書を提出しました。

キャッシュAPIとは何ですか?また、サービスワーカーでどのように使用されますか? キャッシュAPIとは何ですか?また、サービスワーカーでどのように使用されますか? Jul 08, 2025 am 02:43 AM

Cacheapiは、ブラウザからネットワークリクエストをキャッシュするツールです。これは、ウェブサイトのパフォーマンスとオフラインエクスペリエンスを改善するために、サービスワーカーと併用することがよくあります。 1.開発者は、スクリプト、スタイルシート、寫真などのリソースを手動で保存できるようにします。 2。要求に応じてキャッシュ応答と一致させることができます。 3.特定のキャッシュの削除またはキャッシュ全體のクリアをサポートします。 4.フェッチイベントを聞いているサービスワーカーを介して、キャッシュの優(yōu)先順位またはネットワークの優(yōu)先戦略を?qū)g裝できます。 5.オフラインサポート、繰り返しのアクセス速度の高速化、主要なリソースのプリロード、バックグラウンドアップデートコンテンツによく使用されます。 6.それを使用する場合、キャッシュバージョンの制御、ストレージ制限、およびHTTPキャッシングメカニズムとの違いに注意する必要があります。

ハンドリングの約束:javascriptのチェーン、エラー処理、および約束の組み合わせ ハンドリングの約束:javascriptのチェーン、エラー処理、および約束の組み合わせ Jul 08, 2025 am 02:40 AM

約束は、JavaScriptで非同期操作を処理するためのコアメカニズムです。チェーンコール、エラー処理、コンビナーの理解は、アプリケーションをマスターするための鍵です。 1.チェーンコールは、.then()を通じて新しい約束を返し、非同期プロセスの連結(jié)を?qū)g現(xiàn)します。それぞれ.then()は以前の結(jié)果を受け取り、値または約束を返すことができます。 2。エラー処理は、.catch()を使用して例外をキャッチしてサイレント障害を回避し、キャッチのデフォルト値を返すためにプロセスを継続する必要があります。 3。promise.all()などの組み合わせ(すべての成功後にのみ成功しました)、promise.race()(最初の完了が返されます)、promise.allsettled()(すべての完了を待っています)

JavaScriptでのデータ操作のためのArray.Prototypeメソッドを活用します JavaScriptでのデータ操作のためのArray.Prototypeメソッドを活用します Jul 06, 2025 am 02:36 AM

.map()、.filter()、.reduce()などのJavaScriptアレイ內(nèi)蔵メソッドは、データ処理を簡素化できます。 1).map()は、要素を1つに変換して新しい配列を生成するために使用されます。 2).filter()は、條件ごとに要素をフィルタリングするために使用されます。 3).reduce()は、データを単一の値として集約するために使用されます。使用すると誤用を避ける必要があり、その結(jié)果、副作用やパフォーマンスの問題が発生します。

JSラウンドアップ:JavaScriptイベントループに深く潛り込む JSラウンドアップ:JavaScriptイベントループに深く潛り込む Jul 08, 2025 am 02:24 AM

JavaScriptのイベントループは、コールスタック、WebAPIS、およびタスクキューを調(diào)整することにより、非同期操作を管理します。 1.コールスタックは同期コードを?qū)g行し、非同期タスクに遭遇すると、処理のためにWebAPIに引き渡されます。 2。WebAPIがバックグラウンドでタスクを完了した後、コールバックを?qū)潖辘工毳濠`(マクロタスクまたはマイクロタスク)に入れます。 3.イベントループは、コールスタックが空であるかどうかをチェックします??栅螆龊?、コールバックはキューから取り出され、実行のためにコールスタックに押し込まれます。 4.マイクロタスク(Promise.thenなど)は、マクロタスク(SettimeOutなど)より優(yōu)先されます。 5.イベントループを理解するには、メインスレッドのブロックを避け、コード実行順序を最適化するのに役立ちます。

See all articles