1. 三項演算子の判定<text :style="{color:state?'#ff9933':'#ff0000'}">こんにちは世界</text> <スクリプト> エクスポートデフォルト{ データ() { 戻る { 状態: 真 } } } </スクリプト> 2. 動的に設定されるクラス2.1 主な用途: ループリストをクリックすると、対応する要素が強調表示されます。(デフォルトでは最初の要素が強調表示されます) <テンプレート> <div class="wrapper" v-for="(item,index) in houseList" :key="index" @click="rightTap(index)"> <div class="houseTitle" :class="{'active' : index === rightIndex}"> {{item.name}} </div> </div> </テンプレート> <スクリプト> エクスポートデフォルト{ データ() { 戻る { 右インデックス:0, ハウスリスト:[] }; }, 方法:{ 右タップ(インデックス){ this.rightIndex = インデックス } } } </スクリプト> <style lang="scss" スコープ> .ラッパー{ 幅: 118ピクセル; 高さ: 60px; マージン: 6px 自動 0 自動; .houseタイトル{ フォントサイズ: 22px; テキスト配置: 中央; 空白: ラップなし; オーバーフロー: 非表示; テキストオーバーフロー: 省略記号; } 。アクティブ{ 色:#2a7ffa; 背景色: ピンク; } } </スタイル> 2.2 主な用途: 特定の値に対応するスタイルを設定する。 <div :class="activeId === item.id?'activeStyle':'machineBar'" v-for="(item,index) in List" :key="index" @click="clickEvent"> <p>{{アイテム名}}</p> </div> 3. 方法判定3.1 主な用途: 異なるデータ値に対応するスタイルを設定する。 <テンプレート> <div v-for="(item,index) in houseList" :key="index"> <div :style="getStyle(item.status)">{{item.name}}</div> </div> </テンプレート> <スクリプト> エクスポートデフォルト{ データ(){ 戻る { ハウスリスト:[ { id:1, 名前:1, ステータス:'a' },{ id:2, 名前:2, ステータス: 'b' },{ id:3, 名前:3, ステータス: 'c' } ] } }, 方法:{ getStyle(e){ console.log('値',e) e === 'a'の場合{ 戻る { 幅:'60px', 高さ:'60px', 背景: '黄色', マージン: '10px 自動' } }そうでない場合(e === 'b'){ 戻る { 幅:'60px', 高さ:'60px', 背景: '赤'、 マージン: '10px 自動' } }そうでない場合(e === 'c'){ 戻る { 幅:'60px', 高さ:'60px', 背景: 'ピンク', マージン: '10px 自動' } } } } } </スクリプト> 3.2 主な用途: 複数の要素イベントで対応するスタイルを表示する。 <テンプレート> <div class="homeWrap" :class="{'select': 選択 === 1,'click': クリック === 1}" @click="handleClick(1)" @mousedown="menuOnSelect(1)"> ホームページ </テンプレート> <スクリプト> エクスポートデフォルト{ 戻る { 選択: 0, クリック数: 0 } 方法:{ menuOnSelect(値){ this.selected = 値; }, ハンドルクリック(値){ 選択 = 0 this.clicked = 値 } } } </スクリプト> <style lang="stylus" スコープ> .homeWrap.select 背景赤 .homeWrap.クリック 背景黄色 </スタイル> 4. 配列バインディング<div :class="[isActive,isSort]"></div> // 配列を三項演算子と組み合わせて必要なクラスを決定します <div class="item" :class="[item.name? 'lg':'sm']"></div> <div class="item" :class="[item.age<18? 'gray':'']"></div> // <div :class="[{ active: isActive }, 'sort']"></div> と結合された配列オブジェクト データ() { 戻る { isActive:'アクティブ'、 isSort:'ソート' } } // css 。アクティブ{ /*ここで設定する必要がある最初のスタイルを記述します*/ } 。選別{ /*ここで設定する必要がある2番目のスタイルを記述します*/ } 5. es6オブジェクトと組み合わせた計算プロパティ名メソッド<div :class="classObject"></div> エクスポートデフォルト{ データ(){ 戻る { アクティブ:true } }, 計算:{ クラスオブジェクト() { 戻る { class_a:this.isActive、 class_b:!this.isActive // これは、独自のプロジェクトの状況に応じて変更して入力する必要があります} } } } // css .class_a{ /*ここで設定する必要がある最初のスタイルを記述します*/ } .class_b{ /*ここで設定する必要がある2番目のスタイルを記述します*/ } 上記は、Vue で動的なスタイルを実現するためのさまざまな方法の詳細な内容です。Vue で動的なスタイルを実現する方法の詳細については、123WORDPRESS.COM の他の関連記事に注目してください。 以下もご興味があるかもしれません:
|
<<: Linux リモート コントロール Windows システム プログラム (3 つの方法)
>>: 魔法のMySQLデッドロックトラブルシューティング記録
1. 同じタイプの空の要素を追加し、要素の CSS 属性 clear:both; を設定します。 ...
Raspberry Pi は ARM アーキテクチャをベースとしているため、Docker のインスト...
Dockerfile は Docker イメージを構築するために使用されるファイルです。コマンドパラ...
1. はじめに: mysql8以降は、これまでよく使われていたバージョンと比べてかなり変更点が大きい...
目次1. データをバックアップするためのmysqldumpコマンド2. 一般的なmysqldump操...
目次関数基本的なクエリ関数クエリ条件の初期化ページのレンダリングクエリと表示の最適化をさらに強化プル...
注意: docker-compose.yml ファイルを書き込むときは、すべてのコロン (:) とダ...
目次要件:実装手順:この記事では主に以下について説明します: カスタムツリーコントロール<el...
目次序文1.無視を挿入2. 重複キーの更新時3. を置き換える4.存在しない場合は挿入する5. デー...
この記事では、Web ページの作成を学習するときに注意すべき HTML タグに関するいくつかの問題を...
パフォーマンスの問題のあるSQL文を取得する方法1. ユーザーからのフィードバックを通じてパフォーマ...
1. SQLを実行して表示する @@session.sql_mode を選択します。 グローバルレベ...
一般的なページング方法: 1. エスカレーター方式エスカレーター方式では通常、前のページ/次のページ...
1. mysql-5.7.17-winx64.zip をダウンロードします。リンク: https:/...
MySQL 8.0.25解凍版のインストールチュートリアル、参考までに具体的な内容は以下のとおりです...