Was ist bei der Registrierung einer App zu beachten?
Was ist grundsätzlich bei der Anmeldung einer Seite zu beachten?
Informationen zu WXML-Vorlagen und IncludeIn wxml können Sie in Seite/Komponente definierte Funktionen nicht direkt aufrufen Definieren Sie das Vorlagentag in der WXML-Datei. Das Vorlagentag wird nicht gerendert, wenn es nicht aufgerufen wird. Das Attribut name entspricht dem Attribut is; Sie können die Syntax {{}} verwenden. <Vorlagenname="Komponente"> <Ansicht>Hahaha</Ansicht> <text>Hey, hey, hey</text> <text>{{name}}</text> <text>{{Alter}}</text> </Vorlage> <template ist="Komponente"/> <template ist="Komponente"/> <template ist="Komponente"/> <template ist="Komponente" data="{{name: '小屏', age:'123'}}" /> Es gibt zwei Möglichkeiten, WXML zu importieren: Import 1: Hauptsächlich Vorlage importieren 2: Die Besonderheit ist, dass kein rekursiver Import möglich ist Einleitung einschließen: 1: Gemeinsame Komponenten in eine Datei extrahieren Funktionen: Vorlage/WXS kann nicht importiert werden/rekursiver Import möglich WXS-ModulDas wxs-Modul ist eine Skriptsprache für kleine Programme, die mit wxml kombiniert werden können und die Struktur der Seite aufbauen können wxs und JavaScript sind unterschiedliche Sprachen mit eigener Syntax, die nicht mit JavaScript übereinstimmt. (Aber im Grunde das Gleiche) In wxml können Sie in Seite/Komponente definierte Funktionen nicht direkt aufrufen In einigen Fällen möchten wir jedoch Funktionen zum Verarbeiten der Daten in wxml verwenden (ähnlich dem Filter in Vue), sodass derzeit wxs verwendet wird. Einschränkungen und Funktionen der WXL-Verwendung: Die WXS-Laufzeitumgebung ist von anderen JavaScript-Codes isoliert. WXS kann weder in anderen JavaScript-Dateien definierte Funktionen noch APIs in Applets aufrufen. wxs kann nicht als Funktionsrückruf eines Arrays verwendet werden. Aufgrund der Unterschiede in der Betriebsumgebung ist wxs in Applets auf iOS-Geräten zwei- bis zwanzigmal schneller als JavaScript, während auf Android-Geräten zwischen beiden kein Unterschied in der Betriebseffizienz besteht. Miniprogramm-KomponentenbildungDie Miniprogrammkomponente und der Seitenstil, der die Komponente aufruft, beeinflussen sich nicht gegenseitig. Um eine Komponente aufzurufen, müssen Sie den Komponentennamen und den Pfad zur JSON-Datei auf der Seite hinzufügen. { "Komponenten verwenden": { "mein-Schnitt":"/Seiten/compent/mein-Schnitt" } } Wenn die Stile von Seiten und Komponenten sich gegenseitig beeinflussen sollen, können Sie die styleIsolation-Eigenschaft von options verwenden. In der JS-Datei der Komponente Component({}) // Durch Festlegen von styleIsolation von Optionen in der Komponente: „apply-shared“ wirken sich die Stilattribute der Seiteneinstellungen auf den Stil der Komponente aus. // Durch Festlegen von styleIsolation von Optionen in der Komponente: „shared“ wirken sich die Stilattribute der Seiteneinstellungen auf den Stil der Komponente aus. Komponente ({ Optionen: { styleIsolation: "shared anwenden" }, }) Die dynamische Konvertierung zwischen Komponenten verwendet Eigenschaften In der Komponente können Sie die Eigenschaft externalClasses verwenden, um den CSS-Stil dynamisch festzulegen Komponente({ Eigenschaften: // Titel: Zeichenfolge Titel:{ Typ: Zeichenfolge, Wert: „Ich bin der Standardwert“, //Neue und alte Werte überwachen observer: function(newVal,oldVal){ console.log(neuerWert,alterWert) } }, }, // In der Komponente können Sie mit dieser Eigenschaft den CSS-Stil externalClasses dynamisch festlegen: ["tltleclass"] }) Aufrufen von Eigenschaften in der Seite <mein-Schnitt Titel="Haha" tltleclass="red"></mein-Schnitt> <my-cut Titel="Hey Hey" tltleclass="grün" /> <mein-Schnitt/> CSS-Datei der Seite .Rot{ Farbe: rot; } .Grün{ Farbe: grün; } Funktionsaufrufe zwischen Komponenten und SeitenWenn wir Komponenten auf einer Seite verwenden, müssen wir manchmal die Komponentendaten ändern, wozu wir die Komponentendaten in der JS-Datei der Seite aufrufen müssen. Im Applet gibt es eine selectComponent('.class/#xxx'), die das Komponentenobjekt abrufen kann. Komponente wxml <Klasse anzeigen="contention"> <block wx:for="{{titled}}" wx:key="index"> <view class="tit"> <text class="intext {{index == increat? 'active' : ''}}" data-count="{{index}}" bindtap="targetTap">{{item}}</text> </view> </block> </Ansicht> Komponente js Methoden: { ZielTap(e){ const index = e.currentTarget.dataset.count dies.setData({ increat:index }) this.triggerEvent("Zielanzahl" , {}) }, ändern(){ dies.setData({ Titel: ["Politik", "Mathematik", "Englisch"] }) } } Seite wxml <switch mit dem Titel="{{list}}" bind:targetCount="targetCount" class="sw-class"></switch> Seite js ZielAnzahl(){ //Komponentenobjekt abrufen const content = this.selectComponent('.sw-class') console.log(Inhalt) // Inhalt.setData({ // mit dem Titel: ["Politik", "Mathematik", "Englisch"] // }) // Offene Spezifikationen empfehlen diese Methode zum direkten Ändern von Funktionen im Allgemeinen nicht. Es wird empfohlen, Methoden innerhalb der Komponente zu verwenden, um die Methode zu ändern und content.amend () auf der Seite aufzurufen. }, Verwendung von Mini-Programmkomponenten-SlotsEinzelsteckplatz Komponente wxml <Ansicht> Ich bin ein Titel</view> <Steckplatz></Steckplatz> <Ansicht> Ich bin ein Inhalt</view> WXML-Verwendung der Seite <mein-Slot> <button size="mini">Schaltfläche</button> </mein-slot> <mein-Slot> <Bildquelle="https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fimg2.woyaogexing.com%2F2021%2F04%2F26%2F1b402c98095d452486508b8250b21f3f%21360x640.jpeg&refer=http%3A%2F%2Fimg2.woyaogexing.com&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=jpeg?sec=1625711145&t=d9d310d5e9c878a9d4b7bc7057f2b754"/> </mein-slot> <mein-Slot> <Schiebereglerwert="20"></Schieberegler> </mein-slot> Verwenden mehrerer Slots Sie müssen jedem Slot einen Namen geben, indem Sie das Attribut name verwenden Die Eigenschaft multipleSolts unter dem Optionsobjekt unter dem Komponentenobjekt muss auf true gesetzt werden. Komponente wxml <view>Ich bin der Titel des Multi-Slots</view> <Ansicht> <Slotname="Slot1" ></Slot> </Ansicht> <Ansicht> <Slotname="Slot2" ></Slot> </Ansicht> <Ansicht> <Slotname="Slot3" ></Slot> </Ansicht> <view>Ich bin das Ende des Multi-Slots</view> Komponenten-JS-Datei Komponente({ /** * Liste der Komponenteneigenschaften */ Optionen: { mehrereSlots:true } )} Nutzung dieser Seite <!-- Verwendung mehrerer Slots --> <!-- Hinweise: Sie müssen jedem Slot einen Namen geben. Sie müssen die Eigenschaft multipleSolts unter dem Optionsobjekt unter dem Komponentenobjekt auf true setzen --> <mein-mslot> <button slot="slot3">415461</button> <slider slot="slot1" value="20"></slider> <text slot="slot2">Hehehe</text> </mein-mslot> Welche Funktionen hat der Komponentenkonstruktor der Miniprogrammkomponente?1 Eigenschaften ermöglichen Benutzern die Weitergabe von Daten an Komponenten Eigenschaften: Titel: Zeichenfolge, Inhalt:{ Typ: Array, Wert: [1,2.3], Beobachter:Funktion(neuerWert,alterWert){ console.log(neuerWert,alterWert) } } } 2.data definiert die Initialisierungsdaten einiger Komponenten Daten:{ Zähler: 0 } 3 Methoden werden verwendet, um Funktionen innerhalb von Komponenten zu definieren Methoden:{ foo(){ } } 4 Optionen definiert die Konfigurationsmöglichkeiten der Komponente Optionen: { //Auf „true“ setzen, wenn Sie mehrere Slots verwenden müssen mehrereSlots:true, //Setze den Isolationsmodus des Stils styleIsolation: "apply-shared", //Die auf der Seite festgelegten Stilattribute wirken sich auf den Stil der Komponente aus //styleIsolation: "shared" Die auf der Seite festgelegten Stilattribute wirken sich auf den Stil der Komponente aus} 5 externalClasses definiert zusätzliche Stile, die von außen übergeben werden externeKlassen:["on","tre"] 6 Beobachter können Änderungen an Eigenschaften/Daten überwachen Beobachter:{ Zähler: Funktion(neuerWert){ console.log(neuerWert) } } 7 Überwachen Sie den Lebenszyklus der Seite In der Komponenten-JS-Datei Seitenlebensdauer: { zeigen(){ console.log("Die Seite, auf der sich die Überwachungskomponente befindet") }, verstecken(){ console.log("Wenn die Seite, auf der sich die Überwachungskomponente befindet, ausgeblendet ist") }, Größe ändern(){ console.log("Seitengrößenänderungen überwachen") } } Überwachen des Komponentenlebenszyklus Lebensdauern: erstellt(){ console.log("Komponente erstellt") }, beigefügt(){ console.log("Die Komponente wird der Seite hinzugefügt") }, bereit(){ console.log("Die Komponente wird gerendert") }, verschoben(){ console.log("Die Komponente wird an eine andere Stelle im Knotenbaum verschoben.") }, losgelöst(){ console.log("Komponente") } } Mini-Programm NetzwerkanfrageonReady: Funktion () { wx.Anfrage({ URL: „http://httpbin.org/post“, Methode: 'post', Daten:{ Name: „wangshuai“, Alter:19 }, Erfolg:Funktion(res){ Konsole.log(res) } }) }, Mehrere Schlüsselattribute
Um die Kopplung zwischen Netzwerkanforderungen und wx.request zu reduzieren, verwenden wir im Allgemeinen die Promise-Methode, um das Rückrufergebnis zu erhalten. Verwenden von Promise-Wrappern Export-Standardfunktionsanforderung (Option) { returniere neues Promise( (lösen, ablehnen) => { wx.Anfrage({ URL: Option.URL, Methode: Option.Methode || 'get', Daten: option.data || {}, Erfolg: Funktion (res) { Entschlossenheit (res) }, Fehler: Funktion (Res) { ablehnen(res) } }) }) } Pageaufruf onReady: Funktion () { //Miniprogramm für native Netzwerkanforderung// wx.request({ // URL: „http://httpbin.org/post“, // Methode: 'post', // Daten:{ // Name: „wangshuai“, //Alter:19 // }, // Erfolg:Funktion(res){ // konsole.log(res) // } // }) Anfrage({url: 'http://httpbin.org/post',Methode:"post"}).dann(res=>{ Konsole.log(res) }).catch(err =>{ console.log(fehler) }) }, Popup-Fensteranzeige im MiniprogrammSeite wxml <button size="mini" bindtap="showToast">Toast anzeigen</button> <button size="mini" bindtap="showModal">Modal anzeigen</button> <button size="mini" bindtap="showLoading">AnzeigenWird geladen</button> <button size="mini" bindtap="showAction">Aktion anzeigen</button> <button size="mini" open-type="share">Teilen</button> Seite js Datei Seite({ Toast anzeigen(){ wx.showToast({ Titel: 'Ich bin showToast', }) }, zeigeModal(){ wx.showModal({ Titel: 'Löschen', Farbe abbrechen: 'Farbe abbrechen', Erfolg:Funktion (Parameter) { console.log(Parameter) wenn (params.abbrechen) { console.log("Auf Löschen abbrechen geklickt") } } }) }, zeigeLaden(){ wx.showLoading({ Titel: 'Warten', mask: true //Geben Sie eine Maske an, um andere Vorgänge zu verhindern}) setzeTimeout(()=>{ wx.hideLoading({ Erfolg: (res) => {}, }) },1500) }, Aktion anzeigen(){ wx.showActionSheet({ itemList: ['Foto', 'Datei'], }) } }) Teilen der MiniprogrammseiteEs gibt zwei Möglichkeiten, ein Miniprogramm freizugeben. Eine besteht darin, auf die Schaltfläche zum Freigeben zu klicken, oder die andere darin, auf die Menüoption in der oberen rechten Ecke zu klicken und „Freigeben“ auszuwählen. Wenn wir ein Miniprogramm teilen, müssen wir die Freigabeinformationen über onShareAppMessage anzeigen Überwachen Sie das Verhalten des Benutzers beim Klicken auf die Schaltfläche „Weiter“ (Schaltflächenkomponente „open-type=„share“) auf der Seite oder auf die Schaltfläche „Weiter“ im Menü oben rechts und passen Sie den weitergeleiteten Inhalt an. Hinweis: Nur wenn dieser Eventhandler definiert ist, wird die Schaltfläche „Weiterleiten“ im Menü oben rechts angezeigt. Dieser Eventhandler muss ein Objekt für benutzerdefinierte Weiterleitungsinhalte zurückgeben. Der zurückgegebene Inhalt ist wie folgt: Über das Miniprogramm jumpNavigator-Tag Über den Navigator springen Sie per URL. <navigator url="/pages/home/home">Zur Startseite springen</navigator> Das Sprungattribut open-type hat folgende Werte Weiterleitung: Schließt die aktuelle Seite und springt zu einer Seite innerhalb der Anwendung. Es ist jedoch nicht erlaubt, zur TabBer-Seite zu springen, und es ist nicht möglich, zurückzukehren switchTab: Zur TabBer-Seite springen und andere Nicht-Tabber-Seiten schließen (muss in TabBer definiert werden) reLaunch: Alle Seiten schließen und eine bestimmte Seite öffnen (eine bestimmte Seite direkt anzeigen und zur TabBer-Seite springen) <navigator url="/pages/home/home">Zur Startseite springen</navigator> <navigator url="/pages/home/home" open-type="redirect">Zur Startseite springen (Umleitung)</navigator> <navigator url="/pages/home/home" open-type="reLaunch">Zur Startseite springen (reLaunch)</navigator> <navigator url="/pages/home/home" open-type="switchTab">Zur Startseite springen (switchTab)</navigator> ZusammenfassenDies ist das Ende dieses Artikels über die grundlegende Verwendung von Miniprogrammen. Weitere Informationen zur grundlegenden Verwendung von Miniprogrammen finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den verwandten Artikeln weiter unten. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: Nginx-Konfiguration basierend auf mehreren Domänennamen, Ports und virtuellen IP-Hosts
>>: Tutorial zur Installation und Konfiguration von MySQL 8.0.12 unter Win10
1. Prinzip des besten linken Präfixes – Wenn mehr...
Verwenden provide+inject in Vue Zuerst müssen Sie...
Inhaltsverzeichnis Beispiel 1 Beispiel 2 Beispiel...
Inhaltsverzeichnis Vorwort Rendern Beispielcode Z...
Vorwort Nginx ist ein auf Leistung ausgelegter HT...
In diesem Artikel wird der spezifische Code von V...
Das Erstellen eines React-Projekts kann sehr einf...
Inhaltsverzeichnis 1 Einleitung 2 Trigger-Einführ...
1. OpenJDK anzeigen rpm -qa|grep jdk 2. Löschen S...
In diesem Artikel wird der spezifische Code von j...
Problem mit der Mysql-Connector-Java-Treiberversi...
In diesem Artikel wird der spezifische Code von J...
Inhaltsverzeichnis Vorwort Die Rolle des Renders ...
Tatsächlich ist es sehr einfach, diesen Effekt zu ...
Ich glaube, dass es vielen Freunden, die sich mit ...