Implementierungsbeispiel für die Datums- und Uhrzeitverarbeitung des WeChat-Applets wxs

Implementierungsbeispiel für die Datums- und Uhrzeitverarbeitung des WeChat-Applets wxs

WXS (WeiXin Script) ist eine Skriptsprache für kleine Programme. WXS unterscheidet sich von JavaScript und hat eine eigene Syntax, die nicht mit JavaScript übereinstimmt. Es enthält viele täglich verwendete JavaScript-Funktionen, die in wxs nicht verwendet werden können. Als ich kürzlich eine Liste erstellte, war ich an Zeitformatierungsvorgängen beteiligt. Ich bin auf dieses Problem gestoßen. Die Formatierungstoolfunktion, die ich zuvor geschrieben habe, wurde direkt in die wxs-Datei des Applet-Projekts kopiert und die Funktion konnte nicht normal ausgeführt werden. Hierzu zählen unter anderem folgende Fehler

  • Die Verwendung regulärer Ausdrücke in der Ersetzungsfunktion eines Strings ist anders. Sie können sie nicht direkt mit var a = /[0-9]/ deklarieren. Der richtige Weg ist var reg = getRegExp("-", "g");
  • Die aktuelle Uhrzeit kann nicht über new Date(), sondern über die Methode getDate ermittelt werden.
  • getDate('2018/12/12') kann die Uhrzeit des Datumstyps abrufen, der dem Datum entspricht.

1. Zeitstempel bis heute

Um Daten in wxs zu verarbeiten, müssen Sie getDate(time) anstelle von new Date() verwenden.

In der wxs-Datei

var filter = {
    formatNumber: Funktion (n) {
        n = n.toString()
        gibt n[1] zurück?
      },
    parseTime: Funktion (Zeit, Typ) {
        wenn (Zeit == null || Typ == '') {
          zurückkehren ''
        }
        wenn (Argumente.Länge === 0) {
          return null
        }
        var date = getDate(time); // In wxs können Sie new Date() nicht zum Verarbeiten von Datumsangaben verwenden console.log("date", date);
        var y = date.getFullYear();
        var m = filter.formatNumber(date.getMonth() + 1);
        var d = filter.formatNumber(date.getDate());
        var h = filter.formatNumber(date.getHours());
        var i = filter.formatNumber(date.getMinutes());
        var s = filter.formatNumber(date.getSeconds());
        var a = filter.formatNumber(date.getDay());
        var time_str = "";
        wenn (Typ == 'Monat') {
          Zeit_Str = y + '-' + m;
        } sonst wenn (Typ == 'Datum') {
          Zeit_Zeichenfolge = y + '-' + m + '-' + d;
        } sonst wenn (Typ == 'Datum/Uhrzeit') {
          Zeit_Str = y + '-' + m + '-' + d + ' ' + h + ':' + i + ':' + s;
        } sonst wenn (Typ == 'nurMonat') {
          Zeit_Str = m;
        } sonst wenn (Typ == 'nurJahr') {
          Zeit_Str = y;
        }
        return time_str
      },
 }
modul.exporte = {
    parseTime: filter.parseTime,
}

Verwendung in wxml

<wxs module="filters" src="../../../filters/filter.wxs"></wxs>
<text>{{filters.parseTime(Zeit,'Datum')}}</text>

2. Konvertieren Sie UTC in Pekinger Zeit

Die UTC-Zeit ist 8 Stunden später als die Peking-Zeit. Auf Apple-Telefonen müssen Sie das „Z“ entfernen, bevor die Zeit verarbeitet wird.

var filter = {
    formatNumber: Funktion (n) {
        n = n.toString()
        gibt n[1] zurück?
      },
    parseTime: Funktion (Zeit, Typ) {
    wenn (Zeit == null || Zeit == '') {
      zurückkehren ''
    }
    wenn (Argumente.Länge === 0) {
      return null
    }
    var Datum;
    wenn (Zeittyp === 'Objekt') {
      Datum = Uhrzeit
    } anders {
      wenn (('' + Zeit).Länge === 10) {
        Zeit = parseInt(Zeit) * 1000
      } anders {
        time = time.replace("Z", " ").replace(getRegExp('-', 'g'), "/")//Z entfernen, kompatibel mit Apple-Telefonen var ts = time.split('T')
        var t1 = ts[0]
        var t2 = ts[1].split('.')[0]
        Zeit = t1 + " " + t2
        time = getDate(time).getTime() + 8 * 3600000; //Die UTC-Zeit unterscheidet sich um 8 Stunden von der Peking-Zeit}
      date = getDate(time) //New Date() kann nicht verwendet werden
    }
    var y = date.getFullYear();
    var m = filter.formatNumber(date.getMonth() + 1);
    var d = filter.formatNumber(date.getDate());
    var h = filter.formatNumber(date.getHours());
    var i = filter.formatNumber(date.getMinutes());
    var s = filter.formatNumber(date.getSeconds());
    var a = filter.formatNumber(date.getDay());
    var time_str = "";
    wenn (Typ == 'Monat') {
      Zeit_Str = y + '-' + m;
    } sonst wenn (Typ == 'Datum') {
      Zeit_Str = y + '-' + m + '-' + d;
    } sonst wenn (Typ == 'Datum/Uhrzeit') {
      Zeit_Str = y + '-' + m + '-' + d + ' ' + h + ':' + i + ':' + s;
    } sonst wenn (Typ == 'nurMonat') {
      Zeit_Str = m;
    } sonst wenn (Typ == 'nurJahr') {
      Zeit_Str = y;
    }
    return time_str
  },
}
modul.exporte = {
    parseTime: filter.parseTime,
}

Dies ist das Ende dieses Artikels über das Implementierungsbeispiel der Datums- und Zeitverarbeitung des WeChat-Applets wxs. Weitere relevante Inhalte zum Datums- und Zeitbereich des Applets wxs finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Lernprogramm zur Verwendung des WeChat-Applets WXS
  • WeChat-Applet wxs erzielt Deckeneffekt
  • Das Applet verwendet wxs, um das Problem zu lösen, dass wxml zwei Dezimalstellen beibehält
  • WeChat-Applet implementiert wxss-Attributbeispiel für den Betrieb von wxml über js
  • Verwenden Sie wxss, um Bilder zu laden und Animationseffekte im WeChat-Applet zu realisieren
  • Beispiel für die Suchkomponente wxSearch des WeChat-Applets, ausführliche Erläuterung
  • So kompilieren Sie WeChat-Applet-lose Dateien in wxss-Dateien
  • WeChat Mini-Programm-Tutorial: WXSS
  • WeChat Mini-Programm WXML, WXSS und JS Einführung und detaillierte Erklärung

<<:  Detaillierte Erklärung der Verwendung des Linux-Befehls lsof

>>:  Lösung zum automatischen Neustart von MySQL

Artikel empfehlen

js zur Realisierung der Web-Message-Board-Funktion

In diesem Artikelbeispiel wird der spezifische JS...

Vue verwendet Filter zum Formatieren von Daten

In diesem Artikelbeispiel wird der spezifische Co...

Vue implementiert eine einfache Slider-Verifizierung

Dieses Artikelbeispiel zeigt die Implementierung ...

JavaScript implementiert einfache Rechnerfunktion

In diesem Artikel wird der spezifische JavaScript...

Vue Router vue-router ausführliche Erklärung Anleitung

Chinesische Dokumentation: https://router.vuejs.o...

Verwenden Sie reines CSS, um einen Scroll-Schatteneffekt zu erzielen

Um es gleich auf den Punkt zu bringen: Bei manche...

Beispiel für eine Vue-Datenanzeige auf einem großen Bildschirm

Um die Anforderungen effizient zu erfüllen und au...

So starten Sie die RabbitMq-Software automatisch, wenn CentOS gestartet wird

1. Erstellen Sie ein neues Rabbitmq im Verzeichni...

Erklärung des HTML-Codes der Webseite: geordnete Liste und ungeordnete Liste

In diesem Abschnitt lernen wir Listenelemente in ...