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
XHTML ist die Grundlage des CSS-Layouts. jb51.net...
<br />Ich habe die in meiner Arbeit verwende...
Neulich habe ich rsync verwendet, um eine große D...
Um einen Flex-Container zu erstellen, fügen Sie e...
Wenn Sie den Inhalt der Datei „source.list“ verse...
Vorwort: Letzten Sonntag bat mich ein Senior, ihm...
<iframe src="./ads_top_tian.html" all...
Vorwort Kürzlich stieß ich bei der Arbeit auf ein...
Es gibt drei Möglichkeiten, ein Springboot-Projek...
Faltdisplay mit mehrzeiligem Textbaustein Falten ...
Beispiel: Tipp: Diese Komponente basiert auf der ...
Viele Webdesigner sind beim Entwurf des Webseitenl...
Inhaltsverzeichnis 1. Verwandte Binlog-Konfigurat...
Bei den vielen Projekten, an denen ich mitgearbei...
Mixins bieten eine sehr flexible Möglichkeit, wie...