In diesem Artikel wird der spezifische Code von Vue zur Implementierung der Sternebewertung mit Dezimalstellen zu Ihrer Information veröffentlicht. Der spezifische Inhalt ist wie folgt Zuerst müssen wir die Datei vue.js importieren CSS-Teil <Stil> hauptsächlich{ Position: relativ; } .Sternlinie{ /* So einstellen, dass kein Zeilenumbruch erzwungen wird */ Breite-Abstand:nowrap; Überlauf: versteckt; Position: absolut; } .Stern{ Anzeige: Inline-Block; /* Stellen Sie die Maus so ein, dass sie die Form einer kleinen Hand annimmt, wenn sie auf einen Stern gelegt wird*/ Cursor: Zeiger } </Stil> Körper <div id="app"> <Eingabetyp="Text" v-Modell.Nummer="Ergebnis"> <- Wenn eine Komponente den gebundenen Wert in einer bidirektionalen Bindung empfängt, muss sie value verwenden, um ihn zu empfangen. Das Prinzip ist wie folgt: Eingabe -> <v-star v-model="Ergebnis"></v-star> </div> Im JS-Teil verwenden wir Komponenten, die Eingabe erfolgt in der Stammkomponente und die von uns erstellten Sterne werden in einer Komponente platziert. Die Sternebewertung wird hauptsächlich durch bidirektionale Bindung realisiert, bei der die übergeordnete Komponente und die untergeordnete Komponente Werte aneinander weitergeben. Komponentenvorlagenteil <script id="v-star" type="text/html"> <main:style="Hauptstil"> <!-- Weißer Stern --> <div Klasse="Sternlinie"> <span @click="changeValue(star)" class="star" :style="starStyle" v-for="insgesamt Sterne">☆</span> </div> <!-- Schwarzer Stern --> <div Klasse="Sternlinie" :style="schwarzerStil"> <span @click="changeValue(star-1)" class="star" :style="starStyle" v-for="insgesamt Sterne">★</span> </div> </main> </Skript> js-Teil <Skript> Vue.Komponente("v-star",{ Vorlage:"#v-star", Requisiten:{ gesamt:{ Standard: 10, }, Größe:{ Standard: 30 }, // Erhalte den Score, der von der übergeordneten Komponente übermittelt wurde Wert:{} }, // Berechnete Eigenschaften berechnet:{ Hauptstil(){ zurückkehren { Breite:diese.Größe * diese.Gesamt + "px", } }, SternStyle(){ zurückkehren { Breite:diese.Größe + "px", Höhe:diese.Größe + "px", Schriftgröße: diese.Größe + 6 + "px" } }, schwarzerStil(){ zurückkehren { Breite:dieser.Wert / dies.Gesamt * 100 + "%" } } }, Methoden:{ Wert ändern(Wert){ // Übergebe das neuste Ergebnis an die Eingabe // Das Eingabe-Tag hat ein Standard-Eingabeereignis this.$emit("input",value) } } }) neuer Vue({ el:"#app", Daten:{ Punktzahl:1 } }) </Skript> Rendern 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:
|
<<: CentOS 7 - Lösungsprozessdiagramm für vergessene Passwörter
>>: Fehlerbehebung bei Master-Slave-Verzögerungsproblemen beim Upgrade von MySQL 5.6 auf 5.7
1 MySQL Autocommit-Einstellungen MySQL führt stan...
Da das, was ich zuvor geschrieben habe, nicht det...
An nationalen Trauertagen, Tagen mit schweren Erd...
Inhaltsverzeichnis Konzept Array-Destrukturierung...
Nachdem wir Docker gestartet haben, schauen wir u...
1. Beschreibung Wenn wir in MySQL die Gesamtzahl ...
1. Verwenden Sie die Geschwindigkeitskontrollfunk...
Alibaba Cloud Server installiert und konfiguriert...
Reine Front-End-Implementierung:切片上傳斷點續傳.斷點續傳muss...
1. Umwelt VS 2019 16.9.0 Vorschau 1.0 .NET SDK 5....
Verwenden Sie das KTL-Tool, um Daten von MySQL zu...
Im vorherigen Artikel haben wir drei gängige Meth...
Vorwort: position:sticky ist ein neues Attribut d...
1. Überwachungsplanung Bevor Sie ein Überwachungs...
Es gibt drei Möglichkeiten, ein Springboot-Projek...