ProblembeschreibungIm Rahmen der Ele.me-Benutzeroberfläche liegen die Eingabedaten im El-Format und die Ausgabedaten in der El-Tabelle vor. Manchmal möchten Produkte langweilige Tabellen dynamisch gestalten, z. B. indem sie unterschiedliche Stile für unterschiedliche Inhalte anzeigen. Es gibt tatsächlich viele Möglichkeiten, diese Anforderung zu erfüllen. Dieser Artikel listet zwei davon als Referenz auf. Implementierungsmethode 1 Das Wirkungsdiagramm sieht wie folgt aus Der Code lautet wie folgt <Vorlage> <div id="app"> <!-- Voraussetzung: Zeichentabelle der Drei Königreiche, die erfordert, dass verschiedene Länder unterschiedliche Farben anzeigen (rot für Wei, schwarz für Shu, blau für Wu) --> <el-table :data="tableData" style="width: 100%"> <el-table-column prop="name" label="Tabelle" width="180"> </el-table-column> <el-table-column prop="nation" label="Nation" width="180"> <!-- Die Idee besteht darin, die entsprechenden Daten über den Vorlagensteckplatz abzurufen. Unterschiedliche Daten werden in unterschiedlichen Farben angezeigt. Natürlich kann nur eine angezeigt werden (gesteuert durch v-if) --> <Vorlage Umfang="Umfang"> <div v-if="scope.row.nation == 'Skala'" style="color:red;font-weight:bold;">{{scope.row.nation}}</div> <div v-if="scope.row.nation == 'Skala'" style="color:black;font-weight:bold;">{{scope.row.nation}}</div> <div v-if="scope.row.nation == 'Sicht'" style="color:blue;font-weight:bold;">{{scope.row.nation}}</div> </Vorlage> </el-Tabellenspalte> <el-table-column prop="bornPlace" label="Geburtsort"> </el-table-column> </el-Tabelle> </div> </Vorlage> <Skript> Standard exportieren { Name: "App", Daten() { zurückkehren { Tabellendaten: [ { Name: "Liu Bei", Nation: "Königreich Shu", Geburtsort: „Kreis Zhuo, Kreis Zhuo (Stadt Zhuozhou, Provinz Hebei)“, }, { Name: "Cao Cao", Nation: "Wei-Staat", Geburtsort: „Kreis Qiao, Staat Pei (Stadt Bozhou, Provinz Anhui)“, }, { Name: "Sun Quan", Nation: "Staat Wu", Geburtsort: „Kreis Wujun Fuchun (Bezirk Fuyang, Stadt Hangzhou, Provinz Zhejiang)“, }, { Name: "Guan Yu", Nation: "Königreich Shu", Geburtsort: „Kreis Hedong, Kreis Jie (Stadt Jiezhou, Bezirk Yanhu, Stadt Yuncheng, Provinz Shanxi)“, }, ], }; }, }; </Skript> Methode 1 Um diese erste Methode zusammenzufassen: Obwohl sie den Effekt erzielen kann, wird der Code in el-table geschrieben, was aufgebläht aussieht. Wenn nur zwei oder drei Stile dynamisch angezeigt werden müssen, kann er geschrieben werden, aber wenn sieben oder acht oder sogar noch mehr Stile dynamisch angezeigt werden müssen, wird diese Schreibmethode sehr aufgebläht und später schwer zu warten sein. Ich persönlich empfehle die zweite Möglichkeit, nämlich die Verwendung des dynamischen Bindungsstils :style von Vue, der dies erreicht. Dadurch lässt sich nicht nur der Code vereinfachen, sondern auch umfassendere Effekte erzielen. wie folgt: Implementierungsmethode 2 Das Wirkungsdiagramm sieht wie folgt aus Der Code lautet wie folgt <Vorlage> <div id="app"> <!-- Voraussetzung: Zeichentabelle der Drei Königreiche, die erfordert, dass verschiedene Länder unterschiedliche Farben anzeigen (rot für Wei, schwarz für Shu, blau für Wu) --> <el-table :data="tableData" style="width: 100%"> <el-table-column prop="name" label="Tabelle" width="180"> </el-table-column> <el-table-column prop="nation" label="Nation" width="180"> <!-- Die Idee besteht darin, die entsprechenden Daten über den Vorlagensteckplatz abzurufen und mithilfe der Methode „Vue Dynamic Style“ dynamisch verschiedene Farben anzuzeigen. Diese Methode ist flexibler--> <Vorlage Umfang="Umfang"> <!-- bedeutet: Binden Sie einen dynamischen Stil an dieses Div. Der Wert des Farbattributs ist der Rückgabewert der Methode getColorByNation (), sodass Sie den Rückgabewert der Methode nur über den übergebenen Bereich dynamisch festlegen müssen -> <div :style="{color:getColorByNation(scope),fontSize:getSizeByNation(scope),fontWeight:'bold'}">{{scope.row.nation}}</div> </Vorlage> </el-Tabellenspalte> <el-table-column prop="bornPlace" label="Geburtsort"> </el-table-column> </el-Tabelle> </div> </Vorlage> <Skript> Standard exportieren { Name: "App", Daten() { zurückkehren { Tabellendaten: [ { Name: "Liu Bei", Nation: "Königreich Shu", Geburtsort: „Kreis Zhuo, Kreis Zhuo (Stadt Zhuozhou, Provinz Hebei)“, }, { Name: "Cao Cao", Nation: "Wei-Staat", Geburtsort: „Kreis Qiao, Staat Pei (Stadt Bozhou, Provinz Anhui)“, }, { Name: "Sun Quan", Nation: "Staat Wu", Geburtsort: „Kreis Wujun Fuchun (Bezirk Fuyang, Stadt Hangzhou, Provinz Zhejiang)“, }, { Name: "Guan Yu", Nation: "Königreich Shu", Geburtsort: „Kreis Hedong, Kreis Jie (Stadt Jiezhou, Bezirk Yanhu, Stadt Yuncheng, Provinz Shanxi)“, }, ], }; }, Methoden: { // Farbe dynamisch festlegen getColorByNation(scope){ console.log(scope); // Drucke den übergebenen Bereich, damit er der gesamten Datenzeile in verschiedenen Zeilen der Tabelle entspricht, wie in der folgenden Abbildung gezeigt: wenn(scope.row.nation == "Nation"){ Rückkehr "rot" }sonst wenn(scope.row.nation == "Shu"){ Rückkehr "schwarz" }sonst wenn(scope.row.nation == "Wu"){ Rückkehr "blau" } }, // Schriftgröße dynamisch festlegen getSizeByNation(scope){ wenn(scope.row.nation == "Nation"){ gebe "14px" zurück }sonst wenn(scope.row.nation == "Shu"){ gebe "18px" zurück }sonst wenn(scope.row.nation == "Wu"){ gebe "24px" zurück } } }, }; </Skript> Drucken Sie den übergebenen Umfang Methode 2 fasst zusammen, dass diese Methode der Steuerung durch Bindungsstilen über Vue viel flexibler ist als die erste Methode. Schließlich wird die erste Methode in einer El-Tabelle und die zweite Methode in Methoden geschrieben. Welches konkret zu verwenden ist, hängt von den Anforderungen der Szene ab. Dies ist das Ende dieses Artikels über Beispiele für die dynamische Implementierung verschiedener Datenstile in einer Spalte der El-Tabelle eines Elements der Benutzeroberfläche. Weitere Beispiele für die dynamische Implementierung verschiedener Datenstile in einer Spalte der El-Tabelle eines Elements der Benutzeroberfläche finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Verschiedene Methoden zum Neustarten von Mysql unter CentOS (empfohlen)
Vorwort Das Projekt stellt Anforderungen an Karte...
1. Welche drei Formate? Dies sind: gif, jpg und pn...
Stilvorlagen CSS (Cascading Style Sheets) wird zu...
0x0 Testumgebung Der Produktionsserver der Zentra...
1. Abgerundete Ecken Heutige Webdesigns halten stä...
Vorwort In diesem Artikel wird hauptsächlich ein ...
Dies ist das Installationstutorial von mysql5.7.1...
Was ist eine Richtlinie? Sowohl Angular als auch ...
Vorwort: Während des Betriebs und der Wartung der...
Bild herunterladen Docker-Pull MySQL:5.7 docker p...
Ich habe lange mit einem Problem gekämpft und das...
Ich habe in letzter Zeit viel MySQL-bezogene Synt...
Inhaltsverzeichnis Voraussetzungen DNS-Domänennam...
Die Funktion wurde schon vor langer Zeit implemen...
<br />Der häufigste Fehler vieler Website-De...