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デッドロックトラブルシューティング記録
MySQL ストレージ エンジンの概要ストレージ エンジンとは何ですか? MySQL のデータは、さ...
この記事の例では、計算機機能を実装するためのjsの具体的なコードを参考までに共有しています。具体的な...
具体的な方法:まずコマンドプロンプトを開きます。次に、[ mysql -u root -p ] コマ...
react-routerでは、コンポーネント内のジャンプは<Link>で使用できます。し...
手工芸デザインからグラフィックデザイン、そしてウェブデザインまで、デザインの原則は同じままですが、私...
clear:both清除浮動これは私が常に持っていた印象ですが、私はこれをめったに使用せず、私の理...
これはネイティブ JS で実装されたテキスト スクロール効果です。この効果は通常、ニュース、ダイナミ...
コードをコピーコードは次のとおりです。 <本文<フォームアクション="&quo...
1: readonly は、このコントロールをロックして、インターフェイス上で変更できないようにしま...
アメリカのYAHOOがページ制作で使用している画像統合技術。これらのアイコン、列背景、画像ボタンを定...
以前、Docker コンテナの起動後にボリュームをマウントできるかどうか尋ねられたことがあります。m...
この記事では、参考までにMySQL 8.0.16のインストールと設定方法のグラフィックチュートリアル...
HTML にオーディオ ファイルを挿入した後 (mp3 ファイルを再生した後) に発生したいくつかの...
この記事では、ショッピングカートを実装するためのVue.jsフレームワークの具体的なコードを参考まで...
最近、イントラネットポータルを修正していたときに、フィルターを使用する必要がある箇所に遭遇しました。...