ホームページ > ウェブフロントエンド > jsチュートリアル > vue.js 入門チュートリアル バインディング クラスとスタイル スタイル

vue.js 入門チュートリアル バインディング クラスとスタイル スタイル

高洛峰
リリース: 2017-01-12 11:55:08
オリジナル
1277 人が閲覧しました

1. はじめに

データ バインディングの一般的な要件は、要素のクラス リストとそのインライン スタイルを操作することであることは誰もが知っていると思います。これらはすべてプロパティであるため、v-bind を使用してそれらを処理できます。式の最後の文字列を評価するだけで済みます。ただし、文字列の連結は面倒でエラーが発生しやすくなります。したがって、Vue.js は、クラスとスタイルに使用される場合に v-bind を特に強化します。文字列に加えて、式の結果の型はオブジェクトまたは配列にすることもできます。

2. HTML クラスのバインド

注意: class="{{ className }}" などのクラスをバインドするために Mustache タグを使用することはできますが、この記述方法を v-bind:class と組み合わせることはお勧めしません。 2 つのうち 1 つしか選択できません。

オブジェクト構文

v-bind:class にオブジェクトを渡して、クラスを動的に切り替えることができます。 v-bind:class ディレクティブは通常のクラス属性と共存できることに注意してください。

<div class="static" v-bind:class="{ &#39;class-a&#39;: isA, &#39;class-b&#39;: isB }"></div>
ログイン後にコピー
data: {
 isA: true,
 isB: false
}
ログイン後にコピー

は次のようにレンダリングされます:

<div class="static class-a"></div>
ログイン後にコピー

isA と isB が変更されると、それに応じてクラス リストが更新されます。たとえば、isBがtrueになると、クラスリストは「static class-a class-b」になります。

データ内のオブジェクトを直接バインドすることもできます:

<div v-bind:class="classObject"></div>
ログイン後にコピー
data: {
 classObject: {
 &#39;class-a&#39;: true,
 &#39;class-b&#39;: false
 }
}
ログイン後にコピー

ここで、返されたオブジェクトの計算されたプロパティをバインドすることもできます。これは一般的に使用される強力なパターンです。

配列構文

配列を v-bind:class に渡してクラス リストを適用できます:

<div v-bind:class="[classA, classB]">
ログイン後にコピー
data: {
 classA: &#39;class-a&#39;,
 classB: &#39;class-b&#39;
}
ログイン後にコピー

次のようにレンダリングされます:

<div class="class-a class-b"></div>
ログイン後にコピー

条件クラスに基づいてリストを切り替えたい場合もでは、次の三項式を使用できます:

<div v-bind:class="[classA, isB ? classB : &#39;&#39;]">
ログイン後にコピー

この例では、常に classA が追加されますが、isB が true の場合にのみ classB が追加されます。

2. インライン スタイルのバインド

オブジェクト構文

v-bind:style のオブジェクト構文は非常に直感的です。見た目は CSS に非常に似ていますが、実際には JavaScript オブジェクトです。 CSS プロパティ名は、キャメルケースまたはケバブケースにすることができます:

<div v-bind:style="{ color: activeColor, fontSize: fontSize + &#39;px&#39; }"></div>
ログイン後にコピー
data: {
 activeColor: &#39;red&#39;,
 fontSize: 30
}
ログイン後にコピー

多くの場合、テンプレートをわかりやすくするために、スタイル オブジェクトに直接バインドする方が良いです:

<div v-bind:style="styleObject"></div>
ログイン後にコピー
data: {
 styleObject: {
 color: &#39;red&#39;,
 fontSize: &#39;13px&#39;
 }
}
ログイン後にコピー

同様に、オブジェクト構文は、computed と組み合わせて使用​​されることがよくあります。オブジェクトを返すプロパティ。

3. 配列構文

v-bind:style 配列構文は 1 つの要素に複数のスタイル オブジェクトを適用できます:

<div v-bind:style="[styleObjectA, styleObjectB]">
ログイン後にコピー

自動的にプレフィックスを追加します

v-bind:style が使用される場合、ベンダーは必須 CSS プロパティ (transform など) に接頭辞を付ける場合、Vue.js は対応する接頭辞を自動的に検出して追加します。

4. まとめ

上記は、vue.js のバインディング クラスとスタイルの内容をすべてまとめたものであり、vue を学習する皆さんの参考になると思います。 .js 、エディターは vue.js に関する情報を更新し続けます。興味のある方は、php 中国語 Web サイトに引き続き注目してください。

バインディング クラスとスタイルに関する vue.js 入門チュートリアルに関連するその他の記事については、PHP 中国語 Web サイトに注目してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート