Zusammenfassung verschiedener Methoden für Vue zum Erreichen dynamischer Stile

Zusammenfassung verschiedener Methoden für Vue zum Erreichen dynamischer Stile

1. Ternäres Operatorurteil

<text :style="{color:state?'#ff9933':'#ff0000'}">Hallo Welt </text>
<Skript>
Standard exportieren {
	Daten() {
		zurückkehren {
			Status: wahr
		}
	}
}
</Skript>

2. Klasse dynamisch festlegen

2.1 Hauptsächlich verwendet für: Beim Klicken in eine Loop-Liste wird das entsprechende Element hervorgehoben; (das erste Element ist standardmäßig hervorgehoben)

<Vorlage>
	<div class="wrapper" v-for="(item,index) in houseList" :key="index" @click="rightTap(index)">
		<div Klasse="Haustitel" :Klasse="{'aktiv' : index === rechterIndex}">
			{{item.name}}
		</div>
	</div>
</Vorlage>
<Skript>
Standard exportieren {
	Daten() {
		zurückkehren {
			rechterIndex:0,
			Hausliste:[]
		};
	},
	Methoden:{
		rechterTap(index){ 
			dies.rightIndex = index
		}
	}
}
</Skript>
<style lang="scss" scoped>
.Verpackung{
	Breite: 118px;
	Höhe: 60px;
	Rand: 6px auto 0 auto;
	.Haustitel{
		Schriftgröße: 22px;
		Textausrichtung: zentriert;
		Leerzeichen: Nowrap;
		Überlauf: versteckt;
		Textüberlauf: Auslassungspunkte;
	}
	.aktiv{
		Farbe: #2a7ffa;
		 Hintergrundfarbe: rosa;
	}
}
</Stil>

2.2 Hauptsächlich verwendet für: Festlegen entsprechender Stile für bestimmte Werte;

  <div 
    :Klasse="activeId === item.id?'activeStyle':'machineBar'" 
    v-for="(Element, Index) in Liste" :Schlüssel="Index" @click="KlickEreignis">    
      <p>{{item.name}}</p>    
  </div>

3. Methodenbeurteilung

3.1 Hauptsächlich verwendet für: Festlegen entsprechender Stile für verschiedene Datenwerte;

<Vorlage>
  <div v-for="(Artikel,Index) in Hausliste" :Schlüssel="Index">             
     <div :style="getStyle(item.status)">{{item.name}}</div>    
  </div> 
</Vorlage>
<Skript>
Standard exportieren { 
  Daten(){
    zurückkehren {
	  Hausliste:[
        { 
          Ich würde: 1,
          Name:1,
          Status: „a“
        },{
          Ich würde: 2,
          Name: 2,
          Status: „b“
        },{
          Ich würde: 3,
          Name: 3,
          Status: „c“
        }
      ]
    }
  },
  Methoden:{
    getStyle(e){        
      console.log('Wert',e)        
      wenn(e === 'a'){            
        zurückkehren {                
          Breite: '60px',
          Höhe: '60px',                
          Hintergrund: 'gelb',                 
          Rand: „10px automatisch“             
        }        
      }sonst wenn(e === 'b'){            
        zurückkehren {                
          Breite: '60px',
          Höhe: '60px',                  
          Hintergrund: 'rot',                 
          Rand: „10px automatisch“            
        }        
      }sonst wenn(e === 'c'){            
        zurückkehren {                
          Breite: '60px',
          Höhe: '60px',                 
          Hintergrund: „pink“,                 
          Rand: „10px automatisch“             
        }        
      }
    }
  }
}
</Skript>

3.2 Wird hauptsächlich verwendet für: Anzeige entsprechender Stile bei Ereignissen mit mehreren Elementen;

<Vorlage>
  <div 
      Klasse = "homeWrap": Klasse = "{'select': ausgewählt === 1,'click': angeklickt === 1}" 
      @click="handleClick(1)" @mousedown="MenüBeiAuswahl(1)">
     Startseite   
</Vorlage>
<Skript>
Standard exportieren {
  zurückkehren {
      ausgewählt: 0,
      geklickt: 0
  }
  Methoden:{
    menuOnSelect(Wert){
      this.selected = Wert;
    },
    handleClick(Wert){
      Dies ausgewählt = 0
      this.clicked = Wert
    }
  }
 }
</Skript>
<style lang="Stylus" scoped>
  .homeWrap.Auswählen 
    Hintergrund rot
  .homeWrap.klick 
    Hintergrund gelb
</Stil>

4. Array-Bindung

<div :class="[istActive,istSort]"></div>
// Kombinieren Sie das Array mit dem ternären Operator, um die erforderliche Klasse zu bestimmen
<div Klasse="Artikel" :Klasse="[Artikel.name? 'lg':'sm']"></div>
<div Klasse="Artikel" :Klasse="[Artikel.Alter<18? 'gray':'']"></div>
// Array-Objekt kombiniert mit <div :class="[{ active: isActive }, 'sort']"></div>

Daten() {
  zurückkehren {
    isActive:'aktiv',
    isSort:'sortieren'
 }
}
// CSS
.aktiv{
    /*Schreiben Sie hier den ersten Stil, den Sie festlegen müssen*/
  } 
.Sortieren{
    /*Schreiben Sie hier den zweiten Stil, der festgelegt werden muss*/
  }

5. Berechnete Eigenschaftsnamenmethode kombiniert mit es6-Objekt

 <div :Klasse="Klassenobjekt"></div>
 
  Standard exportieren {
    Daten(){
      zurückkehren {
        istAktiv:true
      }
    },
    berechnet:{
      Klassenobjekt() {
        zurückkehren {
          Klasse_a:dies.istAktiv,
          class_b:!dies.istAktiv
        // Dies muss entsprechend der Situation Ihres eigenen Projekts geändert und ausgefüllt werden}
      }
    }
  }
 
// CSS
.Klasse_a{
    /*Schreiben Sie hier den ersten Stil, den Sie festlegen müssen*/
}
 
.klasse_b{
   /*Schreiben Sie hier den zweiten Stil, der festgelegt werden muss*/
 }

Oben finden Sie detaillierte Informationen zu den verschiedenen Methoden von Vue zum Erreichen dynamischer Stile. Weitere Informationen zum Erreichen dynamischer Stile mit Vue finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM!

Das könnte Sie auch interessieren:
  • Detaillierte Erklärung des Methodencodes zum dynamischen Binden von Klasse und Stil in Vue
  • Zusammenfassung der Implementierung dynamischer Bindungen im Vue.js-Stil
  • Vue implementiert bedingte Beurteilung und dynamische Bindungsstilmethode
  • So binden Sie Stile dynamisch in Vue

<<:  Linux-Fernsteuerungsprogramm für Windows-System (drei Methoden)

>>:  Ein magischer MySQL-Deadlock-Troubleshooting-Datensatz

Artikel empfehlen

Super detaillierter GCC-Upgrade-Prozess unter Linux

Inhaltsverzeichnis Vorwort 1. Aktuelle gcc-Versio...

So ändern Sie die Master-Slave-Replikationsoptionen in MySQL online

Vorwort: Die am häufigsten verwendete Architektur...

Beispielcode zum Erzielen eines Aushöhlungseffekts mit reinem CSS

Ich habe kürzlich den Aushöhlungseffekt untersuch...

Detaillierte Analyse der MySQL-Indizes

Vorwort Wir wissen, dass die Indexauswahl Aufgabe...

Die MySQL-Partitionstabelle ist nach Monaten klassifiziert

Inhaltsverzeichnis Erstellen einer Tabelle Zeigen...

Vuex in einem Artikel verstehen

Inhaltsverzeichnis Überblick Die vier Hauptobjekt...

So verwenden Sie ECharts in WeChat Mini-Programmen mit uniapp

Heute verwenden wir Uniapp, um Echarts zur Anzeig...

So implementieren Sie E-Mail-Benachrichtigungen in Zabbix

Umgesetzt gemäß Online-Tutorial. zabbix3.4, mithi...

Vue erhält Token zur Implementierung des Beispielcodes für die Token-Anmeldung

Die Idee hinter der Verwendung eines Tokens zur L...

Detaillierte Erklärung des Marquee-Attributs in HTML

Dieses Tag ist nicht Teil von HTML3.2 und wird nu...

Vue implementiert einfache Rechnerfunktion

In diesem Artikelbeispiel wird der spezifische Co...