


Wie erkennt das Applet Daten durch Überwachung und Berechnung?
In Vue ist „computed“ eine berechnete Eigenschaft, ähnlich einem Filter, der die an die Ansicht gebundenen Daten verarbeitet und auf Änderungen wartet. Um komplexe Datentypen zu überwachen, muss Watch eine umfassende Überwachung verwenden. Beide können Änderungen in Daten auf Vue erkennen. Im Gegensatz zu Vue kann das WeChat-Applet Watch und Compute verwenden, um entsprechende Änderungen vorzunehmen. Nur die Funktion this.setData() im Applet kann Daten erkennen. Daher muss die Funktion jedes Mal manuell ausgeführt werden, wenn Datenänderungen im Applet erkannt werden müssen. Darüber hinaus kann das Applet auch diese beiden Funktionen anhängen, um Datenänderungen zu erkennen.
Vue implementiert die Erkennung von Datenänderungen über Object.defineProperty. Das Einfügen aller Bindungsvorgänge in den Setter der Variablen kann zu Änderungen in anderen Daten führen, wenn sich die Variable ändert. Tatsächlich ist die Implementierung in einem kleinen Programm einfacher als in Vue, da Vue für das Objekt in Daten jede Variable im Objekt rekursiv binden muss, damit es reagiert. Aber im WeChat-Applet kann es, egal ob es sich um ein Objekt oder einen Basistyp handelt, nur über this.setData() geändert werden. Auf diese Weise müssen wir nur Änderungen im Schlüsselwert in den Daten erkennen, nicht im Schlüssel der Schlüsselwert.
Testcode:
Page({ data: { test: { a: 123 }, test1: \'test1\', }, onLoad() { computed(this, { test2: function() { returnthis.data.test.a + \'2222222\' }, test3: function() { returnthis.data.test.a + \'3333333\' } }) watch(this, { test:function(newVal) { console.log(\'invoke watch\') this.setData({test1: newVal.a + \'11111111\' }) } }) }, changeTest() { this.setData({ test:{ a: Math.random().toFixed(5) } }) }, })
Jetzt müssen wir die Überwachungs- und Berechnungsmethoden implementieren, damit sich bei Teständerungen auch test1, test2 und test3 ändern. Aus diesem Grund wird eine Schaltfläche hinzugefügt. Wenn Sie auf diese Schaltfläche klicken, ändert sich der Test. Die
watch-Methode ist relativ einfach. Zuerst definieren wir eine Funktion zum Erkennen von Änderungen:
function defineReactive(data, key, val, fn) { Object.defineProperty(data, key, { configurable: true, enumerable: true, get: function() { return val }, set: function(newVal){ if (newVal === val)return fn &&fn(newVal) val = newVal }, }) }
Dann iterieren wir über die von der Watch-Funktion übergebenen Objekte und rufen die Methode
function watch(ctx, obj) { Object.keys(obj).forEach(key => { defineReactive(ctx.data, key, ctx.data[key], function(value) { obj[key].call(ctx,value) }) }) }
function computed(ctx, obj) { let keys =Object.keys(obj) let dataKeys =Object.keys(ctx.data) dataKeys.forEach(dataKey => { defineReactive(ctx.data, dataKey, ctx.data[dataKey]) }) let firstComputedObj =keys.reduce((prev, next) => { ctx.data.$target =function() { ctx.setData({[next]: obj[next].call(ctx) }) } prev[next] =obj[next].call(ctx) ctx.data.$target =null return prev }, {}) ctx.setData(firstComputedObj) }
computed(this, { test2: function() { returnthis.data.test.a + \'2222222\' }, test3: function() { returnthis.data.test.a + \'3333333\' } })
Mini Program Store Bietet mehr Online-Miniprogramme
deklariert eine Variable, um alle Funktionen zu speichern, die beim Ändern ausgeführt werden müssen, und führt jede Funktion aus, wenn sie festgelegt wird Der Wert von this.data.test hat sich zu diesem Zeitpunkt nicht geändert. Verwenden Sie setTimeout, um ihn in der nächsten Runde erneut auszuführen. Nun stellt sich die Frage, wie man Funktionen zu Subs hinzufügt. Ich weiß nicht, ob Sie sich noch an die beiden oben erwähnten Codezeilen in Reduce erinnern. Denn wenn die berechneten Werte von test1 und test2 zum ersten Mal berechnet werden, wird die Getter-Methode von test aufgerufen. Dies ist eine gute Gelegenheit, die Funktion in subs einzufügen, eine $target-Variable für Daten zu deklarieren und zuzuweisen Geben Sie diese Variable an, damit Sie beurteilen können, ob es einen Zielwert für Daten im Getter gibt, damit Sie ihn in Subs verschieben können. Beachten Sie, dass Sie das Ziel sofort auf Null setzen müssen. Bisher wurde die Überwachung implementiert und berechnet, aber es ist noch nicht vorbei, es gibt ein Problem. Wenn beide gleichzeitig verwendet werden, ist der Schlüssel des überwachten Objekts auch in den Daten vorhanden, sodass Object.defineProperty wiederholt für die Variable aufgerufen wird und die spätere die vorherige überschreibt. Da es nicht wie bei Vue ist, die Reihenfolge des Aufrufs der beiden zu bestimmen, empfehlen wir, zuerst „Computed“ und dann „Watch“ zu schreiben, damit der Wert in „Computed“ beobachtet werden kann. Empfohlen: „Mini-Tutorial zur Programmentwicklung“
Das obige ist der detaillierte Inhalt vonWie erkennt das Applet Daten durch Überwachung und Berechnung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Mit der Popularität mobiler Internettechnologie und Smartphones ist WeChat zu einer unverzichtbaren Anwendung im Leben der Menschen geworden. Mit WeChat-Miniprogrammen können Benutzer Miniprogramme direkt verwenden, um einige einfache Anforderungen zu erfüllen, ohne Anwendungen herunterladen und installieren zu müssen. In diesem Artikel wird erläutert, wie Sie mit Python ein WeChat-Applet entwickeln. 1. Vorbereitung Bevor Sie Python zum Entwickeln des WeChat-Applets verwenden, müssen Sie die entsprechende Python-Bibliothek installieren. Hier empfiehlt es sich, die beiden Bibliotheken wxpy und itchat zu verwenden. wxpy ist eine WeChat-Maschine

Miniprogramme können React verwenden. 1. Implementieren Sie einen Renderer basierend auf „React-Reconciler“ und generieren Sie eine Miniprogrammkomponente zum Parsen und Rendern von DSL. 3. Installieren Sie npm und führen Sie den Entwickler-Build aus npm im Tool; 4. Führen Sie das Paket auf Ihrer eigenen Seite ein und verwenden Sie dann die API, um die Entwicklung abzuschließen.

Implementieren von Kartenumdreheffekten in WeChat-Miniprogrammen In WeChat-Miniprogrammen ist die Implementierung von Kartenumdreheffekten ein häufiger Animationseffekt, der die Benutzererfahrung und die Attraktivität von Schnittstelleninteraktionen verbessern kann. Im Folgenden wird detailliert beschrieben, wie der Kartenumdrehungseffekt im WeChat-Applet implementiert wird, und relevante Codebeispiele bereitgestellt. Zunächst müssen Sie in der Seitenlayoutdatei des Miniprogramms zwei Kartenelemente definieren, eines für die Anzeige des vorderen Inhalts und eines für die Anzeige des hinteren Inhalts. Der spezifische Beispielcode lautet wie folgt: <!--index.wxml-. ->&l

Laut Nachrichten dieser Website vom 31. Oktober und 27. Mai dieses Jahres kündigte die Ant Group den Start des „Chinese Character Picking Project“ an und leitete kürzlich neue Fortschritte ein: Alipay startete das Miniprogramm „Chinese Character Picking – Uncommon Characters“. um Sammlungen der Gesellschaft zu sammeln. Seltene Charaktere ergänzen die Bibliothek seltener Charaktere und bieten unterschiedliche Eingabeerlebnisse für seltene Charaktere, um die Eingabemethode für seltene Charaktere in Alipay zu verbessern. Derzeit können Benutzer das Applet „Ungewöhnliche Zeichen“ aufrufen, indem sie nach Schlüsselwörtern wie „Aufnehmen chinesischer Zeichen“ und „Seltene Zeichen“ suchen. Im Miniprogramm können Benutzer Bilder von seltenen Zeichen einreichen, die vom System nicht erkannt und eingegeben wurden. Nach der Bestätigung nehmen Alipay-Ingenieure zusätzliche Einträge in die Schriftartenbibliothek vor. Auf dieser Website wurde festgestellt, dass Benutzer im Miniprogramm auch die neueste Eingabemethode zur Wortteilung nutzen können. Diese Eingabemethode ist für seltene Wörter mit unklarer Aussprache konzipiert. Demontage durch den Benutzer

Wie Uniapp eine schnelle Konvertierung zwischen Miniprogrammen und H5 erreichen kann, erfordert spezifische Codebeispiele. Mit der Entwicklung des mobilen Internets und der Popularität von Smartphones sind Miniprogramme und H5 zu unverzichtbaren Anwendungsformen geworden. Als plattformübergreifendes Entwicklungsframework kann Uniapp die Konvertierung zwischen kleinen Programmen und H5 basierend auf einer Reihe von Codes schnell realisieren und so die Entwicklungseffizienz erheblich verbessern. In diesem Artikel wird vorgestellt, wie Uniapp eine schnelle Konvertierung zwischen Miniprogrammen und H5 erreichen kann, und es werden konkrete Codebeispiele gegeben. 1. Einführung in uniapp unia

Implementierungsidee x01 Servereinrichtung Zunächst wird auf der Serverseite ein Socket zum Empfangen von Nachrichten verwendet. Jedes Mal, wenn eine Socket-Anfrage angenommen wird, wird ein neuer Thread geöffnet, um die Verteilung und Annahme von Nachrichten zu verwalten Um alle Threads zu verwalten und damit die Verarbeitung verschiedener Funktionen des Chatrooms zu realisieren, ist die Einrichtung des x02-Clients viel einfacher als die des Servers. Die Funktion des Clients besteht lediglich darin, Nachrichten zu senden und zu empfangen und bestimmte Zeichen einzugeben Um die Verwendung unterschiedlicher Funktionen zu erreichen, müssen Sie daher auf der Clientseite nur zwei Threads verwenden, einen für den Empfang von Nachrichten und einen für das Senden von Nachrichten liegt daran, nur

Schritte zur Miniprogramm-Registrierung: 1. Erstellen Sie Kopien von Personalausweisen, Unternehmenslizenzen, juristischen Personenausweisen und anderen Archivierungsmaterialien. 2. Melden Sie sich beim Miniprogramm-Verwaltungshintergrund an. Wählen Sie „Grundeinstellungen“; 5. Geben Sie die Anmeldeinformationen ein; 6. Laden Sie die Anmeldematerialien hoch; 7. Senden Sie den Anmeldeantrag; 8. Warten Sie auf die Überprüfungsergebnisse. Wenn die Einreichung nicht bestanden wird, nehmen Sie basierend auf den Gründen Änderungen vor und den Einreichungsantrag erneut einreichen. 9. Die Folgemaßnahmen für die Einreichung sind Can.

1. Öffnen Sie das WeChat-Miniprogramm und rufen Sie die entsprechende Miniprogrammseite auf. 2. Den mitgliederbezogenen Zugang finden Sie auf der Miniprogrammseite. Normalerweise befindet sich der Mitgliedereingang in der unteren Navigationsleiste oder im persönlichen Zentrum. 3. Klicken Sie auf das Mitgliedschaftsportal, um die Seite mit dem Mitgliedsantrag aufzurufen. 4. Geben Sie auf der Seite des Mitgliedsantrags relevante Informationen wie Mobiltelefonnummer, Name usw. ein. Nachdem Sie die Informationen ausgefüllt haben, reichen Sie den Antrag ein. 5. Das Miniprogramm prüft den Mitgliedschaftsantrag. Nach bestandener Prüfung kann der Benutzer Mitglied des WeChat-Miniprogramms werden. 6. Als Mitglied genießen Benutzer mehr Mitgliedschaftsrechte, wie z. B. Punkte, Gutscheine, exklusive Aktivitäten für Mitglieder usw.
