In diesem Artikel wird der spezifische Code von Vue zur Implementierung eines einfachen Einkaufswagens zu Ihrer Information bereitgestellt. Der spezifische Inhalt ist wie folgt Schauen wir uns zunächst den fertigen Effekt an. CSS-TeilHier gibt es nicht viel zu sagen, nur den Wissenspunkt zu V-Cloak Tisch{ Rand: 1px durchgezogen #e9e9e9; Rahmen-Zusammenbruch: Zusammenbruch; Rahmenabstand: 0; } th,td{ Polsterung: 8px 16px; Rand: 1px durchgezogen #e9e9e9; Textausrichtung: zentriert; } das { Hintergrundfarbe: #f7f7f7; Farbe: #5c6b77; Schriftstärke: 600; } [v-Umhang]{ Anzeige: keine; } HTML-TeilHier sind einige verwendete Vue-Wissenspunkte:
<!DOCTYPE html> <html lang="de"> <Kopf> <meta charset="UTF-8"> <meta name="viewport" content="width=Gerätebreite, Anfangsmaßstab=1.0"> <title>Warenkorb</title> <link rel="stylesheet" href="style.css" > </Kopf> <Text> <div id="app" v-cloak> <div v-if="Bücher.Länge"> <Tabelle> <Kopf> <tr> <th></th> <th>Buchtitel</th> <th>Veröffentlichungsdatum</th> <th>Preis</th> <th>Kaufmenge</th> <th>Löschen</th> </tr> </thead> <tbody> <tr v-for="(item,index) in Büchern"> <th>{{item.id}}</th> <th>{{item.name}}</th> <th>{{item.date}}</th> <!--Lösung 1 behält Dezimalpunkte und Währungssymbole bei--> <!-- <th>{{"¥"+item.price.toFixed(2)}}</th> --> <!--Lösung 2--> <!-- <th>{{getFinalPrice(item.price)}}</th> --> <!--Schema 3--> <th>{{item.price | showPrice}}</th> <th> <button @click="decrement(index)" :disabled="item.count<=0">-</button> {{item.count}} <button @click="Erhöhen(index)">+</button> </th> <th><button @click="removeHandle(index)">Entfernen</button></th> </tr> </tbody> </Tabelle> <h2>Gesamtpreis:{{totalPrice | showPrice}}</h2> </div> <h2 v-sonst> Der Warenkorb ist leer</h2> </div> </body> <script src="../js/vue.js"></script> <script src="main.js"></script> </html> JS-Teilconst app = new Vue({ el:"#app", Daten:{ Bücher: { Ich würde: 1, Name:"Einführung in Algorithmen", Datum:'2006-9', Preis: 85,00, Anzahl: 1 }, { Ich würde: 2, Name:"Die Kunst der UNIX-Programmierung", Datum:'2006-2', Preis: 50,00, Anzahl: 1 }, { Ich würde: 3, Name:"Die Kunst des Programmierens", Datum:'2008-10', Preis: 39,00, Anzahl: 1 }, { Ich würde: 4, Name: „《Code-Enzyklopädie》“, Datum:'2006-3', Preis: 128,00, Anzahl: 1 }, ] }, Methoden: { //Hier verzichten wir auf die Verwendung der Methode „form“ zur Berechnung des Gesamtpreises und verwenden stattdessen die berechnete Eigenschaft, da dies effizienter ist. // getEndpreis(Preis){ // gebe "¥"+price.toFixed(2) zurück // }, Inkrement(Index){ diese.Bücher[index].Anzahl++ }, dekrementieren(Index){ diese.Bücher[index].Anzahl-- }, entferneHandle(index){ dies.books.splice(index,1); } }, berechnet: { Gesamtpreis(){ // Option 1: Gewöhnliche for-Schleife // let totalPrice = 0; // für (lass i = 0; i < this.books.length; i++) { // Gesamtpreis += this.books[i].price * this.books[i].count // } // Gesamtpreis zurückgeben // Lösung 2: für in // lass totalPrice = 0; // für (lass i in diesem.Buch) { // // console.log(i);//1 2 3 4 // Gesamtpreis += this.books[i].price * this.books[i].count // } // Gesamtpreis zurückgeben // Option 3: für von // lass totalPrice = 0; // für (let item von this.books) { // // console.log(item);//Was wir hier erhalten, ist jedes Objekt im Array// totalPrice += item.price * item.count // } // Gesamtpreis zurückgeben // Lösung 4: Reduzieren returniere this.books.reduce(function (preValue, book) { // console.log(book); // Gib jeweils vier Objekte aus return preValue + book.price * book.count }, 0) } }, // Filter:{ zeigePreis(Preis){ returniere "¥"+Preis.toFixed(2) } } }) Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:
|
<<: Grafisches Tutorial zur Installation von MySQL 8.0.12
>>: So entfernen Sie Wagenrücklaufzeichen aus Text in Linux
Inhaltsverzeichnis 1. Drei Funktionen der toStrin...
Die folgenden Fragen basieren alle auf der InnoDB...
Ein Wort vorab: Plötzlich erhielt ich die Aufgabe...
1: Was ist OpenSSL? Welche Funktion hat es? Was i...
CSS3-Syntax: (1rem = 100px für ein 750px-Design) ...
Name Charakter Name Charakter Information Nachric...
Ein Designsoldat fragte: „Kann ich nur reines Des...
Beim Erstellen von Webseiten tritt häufig das Pro...
Notieren Sie die Probleme, die Sie für andere lös...
Was ist ein Spiegel? Ein Bild kann als Dateisyste...
Die offizielle Version 8.0.11 von MySQL 8 wurde v...
Inhaltsverzeichnis Was ist passiert? Verwendung S...
Das Aufkommen von jQuery hat unsere Effizienz bei...
Vorwort Im Falle eines Anwendungsfehlers oder ein...
Nginx verbirgt die Versionsnummer In einer Produk...