Detaillierte Erklärung zur Verwendung des in Vue.js implementierten Kalender-Plugins

Detaillierte Erklärung zur Verwendung des in Vue.js implementierten Kalender-Plugins

Die heute zu implementierende Funktion ist die folgende Funktion: vue.js Simulationskalender-Plugin

Okay, Schluss mit dem Unsinn, kommen wir gleich zum Code

CSS:

*{
     Rand: 0;
     Polsterung: 0;
     -webkit-box-sizing: Rahmenbox;
     -moz-box-sizing: Rahmenbox;
     Box-Größe: Rahmenbox;
        }
        #app{
            Breite: 1000px;
            Rand: 10px automatisch;
        }
        .Kalander{
            Breite: 1000px;
        }
        .Kalendertabelle{
            Breite: 1000px;
        }
        .Kalendertabelle,th,tr,td{
            Rahmen: 1px durchgezogen #333333;
            Rahmen-Zusammenbruch: Zusammenbruch;
        }
        .Kalender td{
            Höhe: 100px;
            vertikale Ausrichtung: oben;
            Textausrichtung: links;
            Polsterung: 5px 0 0 5px;
            Schriftgröße: 13px;
        }
        .Kalender td.cur{
            Farbe: rot;
        }

html:

<div id="app">
    <div Klasse="Kalender">
        <Tabelle>
            <Beschriftung>
                <Wählen Sie v-Modell.Nummer="Jahr">
                    <option v-for="i von 490">{{i+1969}}</option>
                </Auswählen>
                <select v-model.number="Monat">
                    <option v-for="i von 12">{{i}}</option>
                </Auswählen>
            </caption>
            <Kopf>
            <tr>
                <th>Sonntag</th>
                <th>Montag</th>
                <th>Dienstag</th>
                <th>Mittwoch</th>
                <th>Donnerstag</th>
                <th>Freitag</th>
                <th>Samstag</th>
            </tr>
            </thead>
            <tbody>
            <!--index beginnt bei 0 und i beginnt bei 1-->
            <tr v-for="(a,index) von Kalenderlänge / 7" >
                <td v-for="i von 7" :class="{cur:calender[index * 7 + (i - 1)].cur }">{{calender[index * 7 + (i - 1)].fullDay}}</td>
            </tr>
            </tbody>
        </Tabelle>
    </div>
</div>

javascript - Argumente:

var vm = neuer Vue({
        el:'#app',
        Daten:{
            Jahr: 2018,
            Monat:1
        },
        berechnet:{
            Kalander(){
                var arr = [];

                //neue Daten haben drei Parameter: 1. Jahr 2. Monat 3. Der Standardwert ist 1. Wenn er 0 ist, bedeutet dies den letzten Tag des vorherigen Monats – die ersten zwei Tage 3. übermorgen var nowMonthLength = new Date(this.year,this.month,0).getDate();
                var nowMonthFirstWeek = neues Date(dieses.Jahr,dieser.Monat-1).getDay();
                var lastMonthLength = neues Datum (dieses Jahr, dieser Monat-1,0).getDate();
                console.log('Dieser Monat hat:' + nowMonthLength);
                console.log('Erster Tag dieses Monats' + nowMonthFirstWeek);
                console.log('Länge des letzten Monats' + letzteMonatslänge);

                // dieser.Monat = parseInt(dieser.Monat);
                //Welcher Monat ist der vorherige Monat jedes Monats? var pmonth = this.month == 1 ? 12 : this.month - 1;
                //Vorheriges Jahr var pyear = this.month == 1 ? this.year - 1 :this.year;
                //Nächster Monat var nmonth = this.month == 12 ? 1 : this.month + 1;
                //Nächster Monat var nyear = this.month == 12 ? this.year + 1 : this.year;
                //Funktion zum Auffüllen von Nullen // function toTwo(n) {
                // gebe n < 10 zurück? '0' + n : n;
                // }
                Funktion build(n) {
                    gibt n.toString().Länge > 1 zurück? n.toString() : '0' + n.toString();
                }
                // Die letzten Tage des letzten Monats hinzufügen while(nowMonthFirstWeek--){
                    arr.unshift({
                        Tag:letzteMonatslänge,
                        aktuell:wahr,
                        ganzerTag: `${pyear}-${buling(pmonth)}-${buling(lastMonthLength)}`
                    });
                    letzteMonatslänge--
                }
                Konsole.log(arr);

                //Tage dieses Monats var _a = 1;
                während(jetztMonatslänge--){
                    arr.push({
                        Tag:_a,
                        aktuell:false,
                        ganzerTag: `${dieses.Jahr}-${buling(dieser.Monat)}-${buling(_a)}`
                    });
                    _a++
                }

                //Nächsten Monat abschließen var nextLength = arr.length > 35 ? 42 - arr.length : 35 - arr.length;
                _a = 1;
                während (nächsteLänge--){
                    arr.push({
                        Tag:_a,
                        aktuell:wahr,
                        ganzerTag: `${nyear}-${buling(nmonth)}-${buling(_a)}`
                    });
                    _a++
                }
                Rückflug an;
            }
        }
    })

Hinweis: Sie müssen zuerst Ihre lokale vue.js-Datei importieren, bevor sie ordnungsgemäß ausgeführt werden kann!!!

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:
  • So verwenden Sie das Vue-Video-Player-Plugin für die Vue-Videowiedergabe
  • Eine einfache Möglichkeit, das Lodop-Plugin in Vue zu verwenden, um eine Druckfunktion zu implementieren
  • So verwenden Sie das Vue-Paging-Plugin
  • Detaillierte Erläuterung zur Verwendung des Vue WeChat-Sharing-Plugins
  • So verwenden Sie das Vue-Layer-Bullet-Box-Plugin im Vue-Projekt
  • Beispiel für die Verwendung des JSONP-Plugins in Vue
  • Detaillierte Erklärung zur Verwendung von vue-cropper, einem Vue-Plugin zum Zuschneiden von Bildern
  • Detaillierte Freigabe der Vue-Plugin-Nutzung

<<:  mysql 8.0.20 winx64.zip komprimierte Version Installations- und Konfigurationsmethode grafisches Tutorial

>>:  Eine vollständige Liste häufig verwendeter Linux-Befehle (empfohlene Sammlung)

Artikel empfehlen

So erstellen Sie DockerHub selbst

Der Docker Hub, den wir zuvor verwendet haben, wi...

Ubuntu 20.04 CUDA- und cuDNN-Installationsmethode (grafisches Tutorial)

CUDA-Installation, cuda herunterladen Geben Sie d...

Erste Schritte mit SELinux

Bereits zu Kernel 2.6-Zeiten wurde ein neues Sich...

Über das WeChat Mini-Programm zur Implementierung von Cloud-Zahlungen

Inhaltsverzeichnis 1. Einleitung 2. Gedankenanaly...

Eine kurze Diskussion über die häufig verwendeten APIs der VUE uni-app

Inhaltsverzeichnis 1. Routing und Seitensprung 2....

Mysql löst das N+1-Abfrageproblem der Datenbank

Einführung In Orm-Frameworks wie Hibernate und My...

vsCode generiert Vue-Vorlagen mit einem Klick

1. Verwenden Sie die Tastenkombination Strg + Ums...

Implementierung einer Bildfragmentierungsladefunktion basierend auf HTML-Code

Heute werden wir einen fragmentierten Bildladeeff...

MySQL-Abfrageoptimierung: Eine Tabellenoptimierungslösung für 1 Million Daten

1. Abfragegeschwindigkeit von zwei Abfrage-Engine...

So übertragen Sie Dateien zwischen Docker-Container und lokalem Computer

Zum Übertragen von Dateien zwischen dem Host und ...

Detaillierte Erklärung des Übergangsattributs einer einfachen CSS-Animation

1. Verständnis der Übergangsattribute 1. Das Über...