Maison  >  Article  >  Applet WeChat  >  40 conseils techniques pour l'élaboration de mini programmes, de pures informations pratiques

40 conseils techniques pour l'élaboration de mini programmes, de pures informations pratiques

高洛峰
高洛峰original
2017-02-11 11:05:092137parcourir

Le « mini programme » de WeChat est officiellement lancé depuis une semaine et les sujets connexes continuent d'être d'actualité. La nouvelle du développement de « mini-programmes » par Alipay a été immédiatement révélée et les géants de l'Internet se préparaient. De nombreux internautes ont plaisanté en disant que cet élan remettrait en question « l'empire APP » existant. Eh bien, face à un mini-programme aussi populaire, WeX5 Mobile Development Cloud n'est pas resté inactif. Après une recherche sur tout Internet, nous avons sélectionné un article incontournable pour les développeurs de mini-programmes, couvrant 40 technologies auxquelles il faut prêter attention. dans le développement pratique de mini-programmes Cliquez ici pour votre référence !

Q : Pourquoi les objets tels que la fenêtre ne peuvent-ils pas être utilisés dans les scripts

A : La logique de script de la page est exécutée dans JsCore est un environnement ? sans objets window, donc Window ne peut pas être utilisé dans des scripts, et les composants ne peuvent pas non plus être utilisés dans des scripts

Q : Pourquoi zepto/jquery ne peut pas être utilisé

A:zepto/jquery utilisera l'objet window et l'objet document, il ne peut donc pas être utilisé.

Q : wx.navigateTo ne peut pas ouvrir la page

A : Une application ne peut ouvrir que 5 pages en même temps après l'ouverture de 5 pages. , wx.navigateTo ne peut pas ouvrir une nouvelle page normalement. Veuillez éviter les interactions à plusieurs niveaux ou utiliser wx.redirectTo

Q : Les feuilles de style ne prennent pas en charge les sélecteurs en cascade

A : WXSS prend en charge les classes commençant par .

Q : Les ressources locales ne peuvent pas être obtenues via css

A : background-image : Vous pouvez utiliser des images réseau , ou base64, ou utilisez la balise

Q : Comment modifier la couleur de fond de la fenêtre

A : Utilisez le sélecteur de balise page , vous pouvez modifier le style du nœud de niveau supérieur

page {

display: block

min-height : 100 % ;

background-color : rouge ;

}

Q : Pourquoi le téléchargement a échoué

A : Afin d'améliorer la fluidité de l'expérience, la taille du package de code compilé doit être inférieure à 1 Mo, et le package de code supérieur à 1 Mo ne parviendra pas à télécharger.

Q : HTTPS la demande a échoué

A : tls uniquement pris en charge 1.2 et supérieur

Q : Demande de réseau référent

A : Le le référent de la requête réseau ne peut pas être défini et le format est fixé à https://servicewechat.com/{appid}/{version}/page-frame.html, où { appid } est l' appid du mini programme, {version} est le numéro de version du mini programme et le numéro de version est 0 ce qui signifie qu'il s'agit de la version de développement.

Q : Impossible d'utiliser directement Page.data

A : Évitez d'attribuer et de modifier directement Page.data Veuillez utiliser Page.setData pour synchroniser les données avec la page pour le rendu. entrée utilisateur

Un composant qui peut obtenir une entrée utilisateur doit utiliser l'attribut bindchange du composant pour synchroniser le contenu d'entrée de l'utilisateur avec AppService.

var inputContent = {}

Page({

données : {

inputContent : {}

},

bindChange : function(e) {

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

}

})

Q : L'applet WeChat prend-elle en charge la récupération ou la promesse ?

R : L'outil de promesse ne le prend pas actuellement en charge, et le client fetch ne prend pas en charge l'outil et restera unifié dans le prochaine version.

Q : La valeur currentTarget.id dans l'événement coulissant touchmove ne change pas.

A : Le target / currentTarget de l'événement couchmove/touchend sera toujours le target / currentTarget de l'événement touchstart.

Q : Le serveur de transmission de paramètres de la méthode POST de wx.request ne peut pas recevoir le bogue .

A : Le type de contenu de la publication wx.request est par défaut 'application/json'

si le le serveur ne l'a pas. Si vous utilisez json pour expliquer, vous pouvez redéfinir le content-type sur urlencoded.

wx.request({

....

méthode : "POST",

en-tête : {

"content-type": "application/x-www-form-urlencoded"

},

...

})

Q : wx.uploadFile renvoie le code http 403 sur le téléphone mobile.

R : WeChat pour Android est mis à niveau vers la version 6.5.2 et supérieure.

Q : Le mini-programme prend-il en charge SVG ?

A : Le src de l'image peut être placé dans le svg distant, et il peut également être placé dans le image d’arrière-plan.

Q : Le statusCode renvoyé par wx.request est de type incohérent aux deux extrémités.

R : Ce problème existe et sera corrigé dans une version ultérieure.

Q : À propos de la génération et de la destruction dynamiques de composants ?

A : Les composants générés dynamiquement ne sont pas pris en charge, mais vous pouvez utiliser wx:for pour restituer plusieurs composants.

Q : Le mini-programme prend-il en charge les mises à jour à chaud ?

R : Le remplacement propre aux développeurs n'est pas pris en charge.

Q : Les rappels de certaines interfaces sont incohérents entre iOS et Android. Par exemple, une fois que l'utilisateur a annulé le paiement, iOS rappelle uniquement la méthode complète et Android appelle. revenez la méthode fail. Il n'y a pas de rappel dans le document officiel. Cela montre qu'il est très difficile à développer de la même manière qu'il existe des interfaces de sélection d'images, des interfaces de partage, etc.

A : Interface de paiement, une fois que l'utilisateur a annulé le paiement, iOS rappelle uniquement la méthode complète et Android rappelle la méthode d'échec. Le problème a été enregistré. Merci pour vos commentaires.

Q : Si l'icône est déjà sur le serveur, est-il possible de charger l'image en accédant directement à l'URL ?

R : Non.

Q : Puis-je utiliser des mini-programmes sur mon iPad ?

R : L'iPad n'est pas pris en charge pour l'ouverture de mini-programmes pour le moment.

Q : Problèmes liés au lecteur audio et vidéo du mini-programme. 1. Est-il possible de masquer uniquement la barre de progression et l'heure ? 2. L'heure affichée sur la plateforme iOS est 0:00, mais un code d'erreur s'affiche sur la plateforme Android. Peut-il être modifié via n'importe quel paramètre ?

A : 1 : La prochaine version modifiera l'interaction ici afin que la barre de progression et l'heure ne soient pas affichées. 2 : Ce problème a été résolu dans la version 6.5.3.

Q : Un calque flottant peut-il être ajouté à la fenêtre photo ?

A : Non pris en charge pour le moment.

Q : Les outils de développement signalent souvent des erreurs jsEngineScriptError, ce qui peut entraîner un blanc de la page.

A : Téléchargez la dernière version 0.12.130400 des outils de développement pour essayer

Q : Outils de développement à l'intérieur , sur la page SPA, changer le titre n'a aucun effet.

A : wx.setNavigationBarTitle peut modifier le titre de la barre de navigation via l'API.

Q : La mini-page du programme prend-elle en charge les appuis longs pour enregistrer ou partager des images ?

A : Cette fonction n'est pas disponible actuellement.

Q : Concernant les problèmes actuels de swiper. Si vous définissez current directement dans la nouvelle version, l'effet sera le suivant : quel que soit l'élément du swiper sur lequel vous cliquez, la valeur du premier élément enfant du swiper sera affichée.

R : Actuellement, swiper a quelques bugs dans la gestion des changements dynamiques de swiper-item, qui seront bientôt corrigés.

Q : Le mini-programme peut-il référencer les fichiers wxss et js sur son propre serveur ?

A : Non, le code à distance ne peut pas être exécuté.

Q : Apple 7 génère une erreur interne et consomme trop de mémoire.

A : La page est préchargée et il y a des images dans la liste. Trop d'images sont rendues. La solution est de ne pas afficher les images à l'écran et d'empêcher leur rendu.

Q : Le mini-programme expérimentateur Android est bloqué sur la page de chargement et ne peut pas entrer, mais IOS le peut.

A : Il s'agit d'un bug dans l'ancienne version du client Android WeChat. Veuillez télécharger la dernière version du client 6.5.3.

Q : L'applet WeChat prend-elle actuellement en charge Bluetooth ?

A : Non pris en charge actuellement.

Q : La fonction de partage fonctionne-t-elle sur de vrais appareils ?

A : Il s'agit d'un bug dans l'ancienne version du client Android WeChat. Veuillez télécharger la dernière version du client 6.5.3.

Q : Il est obligatoire d'utiliser https. Comment le déboguer et le tester conjointement dans l'environnement de développement et de test ?

A : "Outils de développement Web WeChat"->"Projet"->"L'environnement de développement ne vérifie pas le nom de domaine demandé et la version TLS."

Q : La méthode wx.showToast() n'est pas valide.

Appelez wx.request pour demander le réseau puis

complète : fonction (res) {

// complète

wx.hideToast();

}

Dans la méthode réussie, si vous souhaitez exécuter showToast, cela semble invalide et aucune boîte de dialogue ne s'affiche.

A : Le rappel success est appelé avant complete S'il est dans success showToast, l'étape suivante complete hideToast sera vidée de showToast. .

Q : La taille du texte dans le composant sélecteur prend-elle en charge la modification ?

A : La modification n'est pas prise en charge.

Q : La taille des images tabBar est trop différente entre Android et iOS.

A : Il s'agit d'un bug dans l'ancienne version du client Android WeChat. Veuillez télécharger la dernière version du client 6.5.3

.

Q : barre d'onglets problème de retour de page. Comment revenir à la page d'accueil du mini programme en cliquant sur la flèche de retour dans le coin supérieur gauche d'une page de barre d'onglets hors page d'accueil ? Vous pouvez maintenant quitter directement le mini programme

A : Lors de la création d'une nouvelle page, utilisez navigationTo pour créer une nouvelle page tout en conservant l'ancienne page si vous l'utilisez. redirectTo consiste à sauter dans la page actuelle.

Q : Je voudrais demander comment configurer wx.request() pour qu'il soit synchronisé.

A : reqeuster consiste à lancer une requête réseau. Il n'y a pas d'interface de synchronisation.

Q : La dernière version de l'outil Mac n'est pas disponible et lorsque je la saisis, il ne parvient pas à obtenir le service d'application.

A : Sélectionnez le réseau de liaison directe dans les paramètres de l'outil. Ou l'outil de configuration du logiciel proxy du système se connecte directement au réseau.

Q : Vraie machine Le débordement de vue sera très bloqué lors du glissement vers le bas.

A : Le calque parent a besoin de position:relative; et il ne restera pas bloqué après l'avoir ajouté.

Ce qui précède est le contenu principal du partage. Il convient de rappeler que le mini-programme lui-même est toujours ajusté, modifié et amélioré en permanence. après l'autre, il faudra également réparer en conséquence. Amis qui se soucient du développement de mini-programmes, suivez-nous pour obtenir les derniers conseils de développement de mini-programmes.

Pour plus de 40 conseils techniques sur le développement de petits programmes, veuillez faire attention au site Web PHP chinois pour des articles purement pratiques !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn