Was sind Ereignisse in der WeChat-Miniprogrammentwicklung? Ausgehend von der Definition von Ereignissen sind Ereignisse die Kommunikationsmethode von der Ansichtsschicht zur Logikschicht. Ereignisse können das Benutzerverhalten zur Verarbeitung an die Logikschicht zurückmelden und sind an Komponenten gebunden. Wenn ein Triggerereignis erreicht wird, wird die entsprechende Ereignisverarbeitungsfunktion in der Logikschicht ausgeführt. Darüber hinaus können Ereignisobjekte zusätzliche Informationen wie ID, Datensatz und Berührungen enthalten.
Da das WeChat-Applet-Framework die Entwurfsmethode der Logikschicht- und UI-Schichtenanalyse übernimmt, muss diese Entwurfsmethode zwei Probleme lösen: Die Ansichtsschicht reagiert auf die Logik der Logikschicht Bei Daten- und Datenänderungen gibt die Ansichtsschicht die Vorgänge des Benutzers an die Logikschicht zurück. WeChat definiert einige Syntax und Regeln, um Entwicklern dabei zu helfen, die Ansichtsebene und die Logikebene zu verbinden. Das erste Problem kann durch Datenbindung gelöst werden, während das zweite Problem mithilfe von Ereignissen gelöst werden muss.
Ereignisbindung
Verwenden Sie die Ereignisbindung, um die Reaktion auf Benutzervorgänge zu vervollständigen. Um beispielsweise das Tap-Ereignis des View-Tags zu verarbeiten, fügen Sie bindtap = ' hinzu Tag-Attribut tapName‘, dann fügen Sie die tapName-Funktion in .js hinzu
//wxml Click me! //.js Page({ tapName:function(event) { console.log(event) } })
Das Ereignisobjekt enthält einige Daten über das Ereignis:
Ziel: die Komponente, die das Ereignis ausgelöst hat
currentTarget: die aktuelle Komponente
Typ: Ereignistyp
timeStamp: Zeitstempel (die Anzahl der Millisekunden, die vom Öffnen der Seite bis zum Auslösen des Ereignisses verstrichen sind)
Berührungen: Array mit Berührungspunkten (Multi-Touch)
changedTouches: Array geänderter Berührungspunkte (Multi-Touch)
Detail: zusätzliche benutzerdefinierte Informationen
Blase Ereignisse und Nicht-Blasen-Ereignisse Ereignisse
Warum gibt es Ziel und StromZiel? Dies liegt daran, dass Ereignisse in zwei Kategorien unterteilt sind: Blasenereignisse und Nicht-Blasenereignisse
Blasenereignisse: Wann Eine Komponente Nachdem das Ereignis ausgelöst wurde, wird das Ereignis an den übergeordneten Knoten übergeben.
Nicht-Blasen-Ereignis: Wenn ein Ereignis auf einer Komponente ausgelöst wird, wird das Ereignis nicht an den übergeordneten Knoten übermittelt.
Das Tap-Ereignis ist ein Bubbling-Ereignis (aus diesem Grund enthält das Ereignis im obigen Beispiel currentTarget).
Warum Bubbling-Events nötig sind
Mit Bubbling-Events lassen sich einige Funktionen komfortabler umsetzen.
Das Programm verfügt beispielsweise über eine Ansicht, die den Avatar und den Namen des Benutzers enthält. Wenn der Benutzer auf den Avatar oder Namen klickt, wird die Seite mit den Benutzerdetails aufgerufen. Wenn kein Bubbling-Ereignis vorliegt, müssen Sie die Klickereignisse des Avatars und des Namens verarbeiten. Jetzt müssen Sie nur noch eine Komponente in die äußere Ebene einschließen und das Ereignis der Komponente verarbeiten.
Verhindern Sie, dass das Ereignis sprudelt.
In manchen Fällen möchten Sie möglicherweise verhindern, dass das Ereignis sprudelt. Sie können die Bindung von Catch-Ereignissen wie Catchtap verwenden, um das Ereignis zu verhindern. sprudelndes Verhalten.
Sie können das folgende Codebeispiel verwenden, um Ihr Verständnis von Blasenereignissen zu vertiefen
//.wxml 我是父亲节点 我是儿子节点 我是孙子节点 //.js Page({ handleTapOutter:function(event) { console.log(父亲节点被点击) }, handleTapMiddle:function(event) { console.log(儿子节点被点击) }, handleInner:function(event) { console.log(孙子节点被点击) }, })
Zusammenfassend bezieht sich ein Ereignis auf etwas, das passiert. Normalerweise führt der Benutzer einige Vorgänge aus, z. B. das Klicken auf eine Schaltfläche Oder Wischen Sie mit dem Finger über den Telefonbildschirm. Wenn ein Ereignis auftritt, ruft das Framework die Ereignisbehandlungsfunktion (falls vorhanden) auf, damit sie auf Benutzervorgänge reagieren kann.
Dieser Artikel ist reproduziert von: http://zixun.jisuapp.cn/xcxkfjc/3059.html
Empfohlen: „ Miniprogramm Entwicklungs-Tutorial 》
Das obige ist der detaillierte Inhalt vonWas sind Ereignisse in der Miniprogrammentwicklung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!