In diesem Artikelbeispiel wird der spezifische Code der benutzerdefinierten optionalen Zeitkalenderkomponente von Vue zu Ihrer Information geteilt. Der spezifische Inhalt ist wie folgt Kalenderfunktionen: 1. Vergangene Zeit kann nicht ausgewählt werden Effektbild:------- Lasst uns die Show beginnen ----------- **Zeichnen Sie zuerst das Layout der Kalenderseite. Beachten Sie dabei das Kalenderlayout des Win10-Systems * 6 Zeilen und 7 Spalten. Warum das so ist, verstehen Sie es bitte selbst ... * Ich habe auch einen „Schauen“ gemacht. beginDay ist der Wochentag des ersten Tages des aktuellen Monats, prevMdays ist die Gesamtzahl der Tage des vorherigen Monats und nowMdays ist die Gesamtzahl der Tage des aktuellen Monats. Dadurch wird der Kalenderanzeigeeffekt erzielt, und einige möglicherweise verwendete Daten sind an das Tag gebunden, z. B. Datendaten usw. <div Klasse = "dateContent-body-day" v-for = "Artikel in 42" :key = "Artikel"> <div v-if="item - beginDay > 0 und item - beginDay <= nowMdays" :Klasse="{ 'aktiver Tag': `${year}/${month}/${item - beginDay}` == aktuelles Datum }" @click="TagesHandler" :data-year="Jahr" :data-month="Monat" :Datentag="Artikel-BeginnTag" :data-dates="Jahr + '/' + Monat + '/' + (Element - Beginntag)" > {{ item-beginDay }} </div> <div class="anderer-Tag" v-else-if="item - beginDay <= 0"> {{ item - beginDay + prevMdays }} </div> <div class="other-day" v-else>{{ item - beginDay - nowMdays }}</div> </div> - Nächste… Verwendete Daten: *active-day ist der hervorgehobene Tag, also das ausgewählte Datum. curDate steuert, welcher Tag ausgewählt ist. Hier ist heute der Standardwert. Ein Props-Daten-TimeArry wird geöffnet, um die Übergabe einiger benutzerdefinierter Daten als nicht auswählbar zu ermöglichen. Wenn die an das angeklickte Datum gebundenen Daten im Array vorhanden sind, werden sie zurückgegeben. Wenn auswählbar, wird das ausgewählte Ergebnis durch das chooseDate-Ereignis über $emit angezeigt. //Klicken, um den Tag zu wechseln dayHandler(e) { konsole.log(e); var daNum = e.target.dataset; wenn (this.cantTime.indexOf(daNum.dates) > -1) { this.$toast("Kein freies Datum, kann nicht ausgewählt werden"); zurückkehren; } Wenn ( `${daNum.Jahr}/${daNum.Monat}/${daNum.Tag}` >= `${neues Datum().getFullYear()}/${neues Datum().getMonth() + 1}/${neues Date().getDate()}` ) { dieses.Datum = e.Ziel.Datensatz.Tag; dies.$emit( "Datum auswählen", dieses.Jahr + "/" + dieser.Monat + "/" + dieses.Datum ); } anders { this.$toast("Vergangene Zeit kann nicht ausgewählt werden"); } }, //Zum nächsten Monat wechseln``nextMonth() { wenn (dieser.Monat == 12) { dieser.Monat = 1; dieses.Jahr++; } anders { diesen.Monat++; } }, Der Wechsel von Monaten und Tagen muss beobachtet werden. Der Fokus liegt auf der Beobachtung der Monatswechsel. Ob die Uhr missbraucht wurde, weiß ich nicht. ```Javascript betrachten: Datum(Wert, alterWert) { wenn (Wert) { this.curDate = `${dieses.Jahr}/${dieser.Monat}/${dieses.Datum}`; } }, Monat(Wert, alterWert) { wenn (Wert) { var ndate; für (var i = 1; i <= 31; i++) { Konsole.log(`${dieses.Jahr}/${dieser.Monat}/${i}`); wenn (this.cantTime.indexOf(`${this.year}/${this.month}/${i}`) < 0) { console.log("Kein Wert vorhanden, Stopp, Datum bleibt bei " + i); nDatum = i; brechen; } } Konsole.log(ndate, `${dieses.Jahr}/${dieser.Monat}/${ndate}`); //Vergleiche den aktuellen Monat mit dem aktuellen Tag. Der Standardwert für zukünftige Monate ist 1 und der Standardwert für den aktuellen Monat ist heute, wenn ( `${dieses.Jahr}/${diesen.Monat}/1` > `${neues Datum().getFullYear()}/${neues Datum().getMonth() + 1}/${neues Date().getDate()}` ) { this.curDate = `${dieses.Jahr}/${dieser.Monat}/${ndate}`; dieses.Datum = nDatum; } anders { für (var i = neues Date().getDate(); i <= 31; i++) { Konsole.log(2`${dieses.Jahr}/${dieser.Monat}/${i}`); wenn (this.cantTime.indexOf(`${this.year}/${this.month}/${i}`) < 0) { dies.curDate = `${new Date().getFullYear()}/${new Date().getMonth() + 1}/${i}`; dieses.Datum = i; brechen; } } } dies.$emit( "Datum auswählen", dieses.Jahr + "/" + dieser.Monat + "/" + dieses.Datum ); } } }, Wird in der übergeordneten Komponente aufgerufen <Kalender :timeArray="timeArray" @chooseDate="chooseHandler"></Kalender> importiere { Kalender , AlertBox} aus '@/components/index.js'; Standard exportieren { Komponenten: {Kalender, AlertBox }, Damit ist der Kalender fertig. 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:
|
<<: Verwendung der MySQL-Zeitdifferenzfunktionen TIMESTAMPDIFF und DATEDIFF
>>: Lösung für den 1045-Fehler in der MySQL-Datenbank
1. Wenn der Benutzer über die Berechtigung zum Er...
Inhaltsverzeichnis MySQLs current_timestamp-Falle...
In diesem Artikel wird der spezifische JavaScript...
In diesem Artikelbeispiel wird der spezifische Co...
In der Welt der Webentwicklung sind Frameworks wei...
Inhaltsverzeichnis Vorwort 1. Was sind Mixins? 2....
<br /> CSS-Syntax für Tabellenränder Zu den ...
Inhaltsverzeichnis Bei der Entwicklung kann eine ...
In diesem Artikelbeispiel wird der spezifische Co...
In diesem Artikel wird der spezifische Code des W...
Spezifische Methode: 1. Öffnen Sie die Eingabeauf...
Lassen Sie uns ohne weitere Umschweife den Screen...
1. Unterschiede in der Netzwerkkonfiguration zwis...
Inhaltsverzeichnis Vorwort iframe implementiert S...
Wenn wir einen Buchstaben auf der Tastatur eingeb...