Heim  >  Artikel  >  WeChat-Applet  >  40 technische Tipps für die Entwicklung von Miniprogrammen, rein praktische Informationen

40 technische Tipps für die Entwicklung von Miniprogrammen, rein praktische Informationen

高洛峰
高洛峰Original
2017-02-11 11:05:092103Durchsuche

Das „Miniprogramm“ von WeChat ist seit einer Woche offiziell gestartet und verwandte Themen werden weiterhin heiß diskutiert. Die Nachricht von Alipays Entwicklung von „Miniprogrammen“ wurde sofort bekannt, und Internetgiganten bereiteten sich darauf vor. Viele Internetnutzer scherzten, dass diese Dynamik das bestehende „APP-Imperium“ herausfordern würde. Nun, angesichts eines so heißen Miniprogramms war die WeX5 Mobile Development Cloud nicht untätig. Nachdem wir das gesamte Internet durchsucht hatten, haben wir einen Artikel ausgewählt, den Miniprogrammentwickler unbedingt lesen müssen und der 40 Technologien abdeckt, auf die man achten muss in der praktischen Miniprogrammentwicklung Klicken Sie hier für Ihre Referenz!

F: Warum können Objekte wie Fenster nicht in Skripten verwendet werden?

A: Die Skriptlogik der Seite wird in JsCore ausgeführt ohne Fensterobjekte, daher kann Window nicht in Skripten verwendet werden, noch können Komponenten in Skripten betrieben werden

F: Warum zepto/jquery nicht verwendet werden kann

A:zepto/jquery verwendet Fensterobjekte und Dokumentobjekte und kann daher nicht verwendet werden.

F: wx.navigateTo kann die Seite nicht öffnen

A: Eine Anwendung kann nur 5 Seiten gleichzeitig öffnen, nachdem 5 Seiten geöffnet wurden , wx.navigateTo kann keine neue Seite normal öffnen. Bitte vermeiden Sie mehrstufige Interaktionen oder verwenden Sie wx.redirectTo

F: Stylesheets unterstützen keine kaskadierenden Selektoren

A: WXSS unterstützt Klassen, die mit Selektoren beginnen.

F: Lokale Ressourcen können nicht über CSS abgerufen werden

A: Hintergrundbild: Sie können Netzwerkbilder verwenden , oder base64, oder verwenden Sie das -Tag

F: So ändern Sie die Hintergrundfarbe des Fensters

A : Mit der Seite Tag-Auswahl können Sie den Stil des obersten Knotens

Seite {

Anzeige: Block

ändern

Mindesthöhe: 100 %;

Hintergrundfarbe: rot;

}

F: Warum der Upload fehlgeschlagen ist

A: Um das reibungslose Erlebnis zu verbessern, muss die Größe des kompilierten Codepakets weniger als 1 MB betragen. Bei Codepaketen, die größer als 1 MB sind, ist dies nicht möglich hochladen.

F: HTTPS-Anfrage fehlgeschlagen

A: tls nur unterstützt 1.2 und höher

F: Netzwerkanfrage Referrer

A: Der Referer der Netzwerkanfrage kann nicht festgelegt werden und das Format ist auf https://servicewechat.com/{appid}/{version}/page-frame.html festgelegt, wobei { appid } ist die App-ID des Miniprogramms, {version} ist die Versionsnummer des Miniprogramms und die Versionsnummer ist 0, was bedeutet, dass es sich um die Entwicklungsversion handelt.

F: Page.data kann nicht direkt bedient werden

A: Vermeiden Sie die direkte Zuweisung und Änderung von Page.data. Bitte verwenden Sie Page.setData, um die Daten zum Rendern zu synchronisieren Benutzereingabe

Eine Komponente, die Benutzereingaben erhalten kann, muss das bindchange-Attribut der Komponente verwenden, um den Eingabeinhalt des Benutzers mit AppService zu synchronisieren.

var inputContent = {}

Page({

data: {

inputContent: {}

},

bindChange: function(e) {

inputContent[e.currentTarget.id] = e.detail.value

}

})

F: Unterstützt das WeChat-Applet Fetch oder Promise?

A: Das Promise-Tool unterstützt es derzeit nicht, und der Fetch-Client unterstützt das Tool nicht und bleibt im vereinheitlicht nächste Version.

F: Der currentTarget.id-Wert im Touchmove-Schiebeereignis ändert sich nicht.

A: Das Ziel / currentTarget des Couchmove/Touchend-Ereignisses ist immer das Ziel / CurrentTarget des touchstart-Ereignisses.

F: Der Parameterübertragungsserver der POST-Methode von wx.request kann die nicht empfangen Insekt .

A: Der Inhaltstyp von wx.request post ist standardmäßig „application/json“

wenn der Server hat es nicht. Wenn Sie json zur Erklärung verwenden, können Sie content-type wieder auf urlencoded setzen.

wx.request({

....

Methode: „POST“,

Header: {

„content-type“: „application/x-www-form-urlencoded“

},

...

})

F: wx.uploadFile gibt den http-Code 403 auf dem Mobiltelefon zurück.

A: WeChat für Android wurde auf Version 6.5.2 und höher aktualisiert.

F: Unterstützt das Miniprogramm SVG

A: Der Quellcode des Bildes kann im Remote-SVG platziert werden, und es kann auch im platziert werden Hintergrundbild.

F: Der von wx.request zurückgegebene StatusCode weist an beiden Enden einen inkonsistenten Typ auf.

A: Dieses Problem besteht tatsächlich und wird in einer späteren Version behoben.

F: Über die dynamische Erzeugung und Zerstörung von Komponenten?

A: Dynamisch generierte Komponenten werden nicht unterstützt, aber Sie können wx:for verwenden, um mehrere Komponenten zu rendern.

F: Unterstützt das Miniprogramm Hot-Updates?

A: Der Ersatz durch Entwickler selbst wird nicht unterstützt.

F: Die Rückrufe einiger Schnittstellen sind zwischen iOS und Android inkonsistent. Nachdem der Benutzer die Zahlung abgebrochen hat, ruft iOS beispielsweise nur die vollständige Methode zurück Es gibt keinen Rückruf im offiziellen Dokument. Es zeigt, dass es sehr schwierig ist, Schnittstellen für die Bildauswahl usw. zu entwickeln.

A: Zahlungsschnittstelle, nachdem der Benutzer die Zahlung abgebrochen hat, ruft iOS nur die vollständige Methode zurück und Android ruft die Fail-Methode zurück. Vielen Dank für Ihr Feedback.

F: Wenn sich das Symbol bereits auf dem Server befindet, ist es dann in Ordnung, das Bild durch direkten Zugriff auf die URL zu laden?

A: Nein.

F: Kann ich keine Miniprogramme auf meinem iPad verwenden?

A: Das iPad wird derzeit nicht zum Öffnen von Miniprogrammen unterstützt.

F: Probleme mit dem Audio- und Videoplayer des Miniprogramms. 1. Ist es möglich, nur den Fortschrittsbalken und die Zeit auszublenden? 2. Die Zeitanzeige auf der iOS-Plattform ist 0:00, aber auf der Android-Plattform wird ein Fehlercode angezeigt. Kann sie über irgendwelche Einstellungen geändert werden?

A: 1: Die nächste Version wird die Interaktion hier ändern, sodass der Fortschrittsbalken und die Zeit nicht angezeigt werden. 2: Dieses Problem wurde in Version 6.5.3 behoben.

F: Kann dem Fotofenster eine schwebende Ebene hinzugefügt werden?

A: Derzeit nicht unterstützt.

F: Entwicklertools melden häufig jsEngineScriptError-Fehler, die zu einem weißen Bildschirm führen können.

A: Laden Sie die neueste 0.12.130400 Version der Entwicklungstools herunter, um sie auszuprobieren

F: Entwicklertools enthalten Auf der SPA-Seite hat das Ändern des Titels keine Auswirkung.

A: wx.setNavigationBarTitle kann den Titel der Navigationsleiste über die API ändern.

F: Unterstützt die Miniprogrammseite das lange Drücken, um Bilder zu speichern oder Bilder zu teilen?

A: Diese Funktion ist derzeit nicht verfügbar.

F: Zu aktuellen Problemen in Swiper. Wenn Sie in der neuen Version direkt „Current“ festlegen, ist der Effekt so: Unabhängig davon, von welchem ​​Swiper-Element aus geklickt wird, wird der Wert des ersten untergeordneten Elements des Swipers angezeigt.

A: Derzeit weist Swiper einige Fehler bei der Verarbeitung dynamischer Änderungen von Swiper-Elementen auf, die bald behoben werden.

F: Kann das Miniprogramm auf WXSS- und JS-Dateien auf seinem eigenen Server verweisen?

A: Nein, Remotecode kann nicht ausgeführt werden.

F: Apple 7 meldet einen internen Fehler und verbraucht zu viel Speicher.

A: Die Seite ist vorinstalliert und die Liste enthält zu viele Bilder. Die Lösung besteht darin, die Bilder nicht auf dem Bildschirm anzuzeigen und zu verhindern, dass sie gerendert werden.

F: Mini-Programm-Erlebnis Android bleibt auf der Ladeseite hängen und kann nicht aufgerufen werden, IOS jedoch.

A: Dies ist ein Fehler in der alten Version des Android-WeChat-Clients. Bitte laden Sie die neueste Version des 6.5.3-Clients herunter.

F: Unterstützt das WeChat-Applet derzeit Bluetooth?

A: Derzeit nicht unterstützt.

F: Funktioniert die Freigabefunktion auf echten Geräten?

A: Dies ist ein Fehler in der alten Version des Android-WeChat-Clients. Bitte laden Sie die neueste Version des 6.5.3-Clients herunter.

F: Es ist obligatorisch, https zu verwenden. Wie kann man es gemeinsam in der Entwicklungs- und Testumgebung debuggen und testen?

A: „WeChat Web Developer Tools“->“Projekt“->„Die Entwicklungsumgebung überprüft den angeforderten Domänennamen und die TLS-Version nicht.“

F: Die Methode wx.showToast() ist ungültig.

Rufen Sie wx.request auf, um das Netzwerk anzufordern, und

complete: function (res) {

// Complete

wx. hideToast();

}

Wenn Sie showToast in der Erfolgsmethode ausführen möchten, fühlt es sich ungültig an und es erscheint kein Eingabeaufforderungsfeld.

A: Der Success-Callback wird vor Complete aufgerufen. Wenn er sich in Success ShowToast befindet, wird im nächsten Schritt Complete HideToast geleert .

F: Unterstützt die Textgröße in der Auswahlkomponente Änderungen?

A: Änderung wird nicht unterstützt.

F: Die Größe der TabBar-Bilder ist zwischen Android und iOS zu unterschiedlich.

A: Dies ist ein Fehler in der alten Version des Android-WeChat-Clients. Bitte laden Sie die neueste Version des 6.5.3-Clients

herunter

F: Tabbar Problem mit der Seitenrückgabe. Wie kehre ich zur Startseite des Miniprogramms zurück, wenn ich auf den Zurück-Pfeil in der oberen linken Ecke einer Nicht-Homepage-Tabbar-Seite klicke? Jetzt können Sie das Miniprogramm direkt beenden

A: Wenn Sie eine neue Seite erstellen, verwenden Sie navigationTo, um eine neue Seite zu erstellen und dabei die alte Seite beizubehalten „redirectTo“ bedeutet, innerhalb der aktuellen Seite zu springen.

F: Ich möchte fragen, wie man wx.request() so einstellt, dass es synchronisiert wird.

A: reqeuster soll eine Netzwerkanfrage initiieren. Es gibt keine Synchronisierungsschnittstelle.

F: Das neueste Mac-Versionstool ist nicht verfügbar und wenn ich es eingebe, kann der Appservice nicht abgerufen werden.

A: Wählen Sie in den Werkzeugeinstellungen das Direktlink-Netzwerk aus. Oder das Proxy-Software-Einstellungstool im System stellt eine direkte Verbindung zum Netzwerk her.

F: Echte Maschine Der Ansichtsüberlauf bleibt beim Herunterrutschen sehr hängen.

A: Die übergeordnete Ebene benötigt position:relative; und bleibt nach dem Hinzufügen nicht hängen.

Das Obige ist der Hauptinhalt des Teilens. Es muss daran erinnert werden, dass das Miniprogramm selbst immer noch angepasst, geändert und verbessert wird Ein weiteres Testament muss ebenfalls entsprechend repariert werden. Freunde, die sich für die Entwicklung von Miniprogrammen interessieren, folgen uns bitte, um die neuesten Tipps zur Entwicklung von Miniprogrammen zu erhalten.

Weitere 40 technische Tipps zur Entwicklung kleiner Programme finden Sie auf der chinesischen PHP-Website für rein praktische Artikel!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn