Maison  >  Article  >  Applet WeChat  >  Résumé de quarante conseils techniques pour le développement de programmes WeChat Mini

Résumé de quarante conseils techniques pour le développement de programmes WeChat Mini

Y2J
Y2Joriginal
2017-04-20 09:14:281680parcourir

Cet article vous présente principalement des informations pertinentes sur quarante conseils techniques pour le développement de mini-programmes WeChat. Je pense qu'il a une certaine valeur de référence pour que tout le monde puisse apprendre ou utiliser les mini-programmes WeChat, il est donc particulièrement recommandé à tout le monde si vous en avez besoin. Les amis peuvent venir le voir ensemble.

Avant-propos

Le « mini programme » WeChat est officiellement lancé depuis une semaine et les sujets connexes continuent d'être brûlants. 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 mettrait en cause « 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 window ne peuvent-ils pas être utilisés dans les scripts

R : La logique de script de la page est exécutée dans JsCore, qui n'a pas d'objet window. vous ne pouvez donc pas utiliser de fenêtres dans des scripts, ni faire fonctionner des composants 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

R : Une application ne peut ouvrir que 5 pages en même temps. sont déjà ouverts, Après la page, wx.navigateTo ne peut pas ouvrir une nouvelle page normalement. Veuillez éviter les interactions à plusieurs niveaux ou utiliser wx.redirectTo

Q : La feuille de style ne prend pas en charge les sélecteurs en cascade

A : Classe WXSS les sélecteurs 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 utiliser 565b296a3970f2fc50e58c1bb915cb79Tag

Q : Comment modifier la couleur d'arrière-plan de la fenêtre

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


page { 
  display: block; 
  min-height: 100%; 
  background-color: red;
}

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 les packages de code supérieurs à 1 Mo ne pourront pas être téléchargés.

Q : La requête HTTPS a échoué

A : tls ne prend en charge que la version 1.2 et supérieure

Q : Référent pour les demandes réseau

A : Le référent pour les demandes réseau ne peut pas être défini et le format est fixé sur https://servicewechat.com/{appid}/{version}/ page-frame.html, où {appid} est le appid du mini programme, {version} est le numéro de version du mini programme, et un numéro de version de 0 signifie qu'il s'agit d'une version de développement.

Q : Les données de page ne peuvent pas être directement manipulées

R : Évitez d'attribuer et de modifier directement Page.data , veuillez utiliser Page.setData uniquement en effectuant des opérations, les données peuvent être synchronisées avec la page pour le rendu. Comment obtenir la saisie de l'utilisateur

Pour obtenir un composant pouvant obtenir une saisie de l'utilisateur, vous devez utiliser l'attribut bindchange du composant à synchroniser. le contenu saisi par l’utilisateur dans AppService.


<input id="myInput" bindchange="bindChange" /><checkbox id="myCheckbox" bindchange="bindChange" />
var inputContent = {}
 
Page({
 data: {
 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 ?

A : promesse L'outil ne le prend actuellement pas en charge et le client de récupération ne le prend pas en charge. L'outil restera unifié dans la prochaine version.

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

A : La cible / currentTarget de l'événement touchmove / touchend sera toujours la cible / currentTarget de touchstart.

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

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

Si le serveur n'utilise pas l'interprétation json, vous pouvez remettre content-type Remettre à urlencoded.


wx.request({
....
method: "POST",
header: {
"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é en background-image.

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 ?

R : 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, l'interface de paiement 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:支付接口,用户取消支付后,ios只回调complete方法,android则回调fail方法,问题已记录,多谢反馈。

Q:如果icon已经在服务器上了,想用直接访问网址的方法加载图片进来这样可以吗?

A:不能。

Q:ipad不能使用小程序?

A:暂时不支持ipad打开小程序。

Q:小程序音频,视频播放器问题 。1、能够只隐藏进度条跟时间吗?2、现在iOS平台上的时间显示是0:00,但是android上会显示错误码,能够通过什么设置修改吗?

A:1:下个版本会修改这里的交互,不显示进度条和时间。2:6.5.3 版本已修复此问题。

Q:拍照窗口可以加浮层吗?

A:暂时不支持。

Q:开发者工具经常报jsEngineScriptError错误,会导致页面白屏。

A:移步下载最新 0.12.130400 版本的开发工具试试

Q:开发者工具里面,SPA页面,更改title无效。

A:wx.setNavigationBarTitle可以通过 API 改变导航栏标题。

Q:请问小程序页内支持长按保存图片或分享图片吗?

A:目前没有这个功能。

Q:关于swiper中的current问题。如果在新的版本中,直接设current,会产生的效果是:无论从哪个swiper元素点击进去,都会显示swiper第一个子元素的值。

A:目前swiper在处理swiper-item动态变化的情况时有一些bug,会很快修复的。

Q:小程序能引用自己服务器上的wxss和js文件吗?

A:不能,无法执行远程代码。

Q:苹果7,提示内部错误,内存占用过多。

A:页面做的预加载,列表中有图片,图片渲染的太多了,解决办法就是不当屏展示的图片,不让它渲染。

Q:小程序体验者安卓卡在加载页面进不去,IOS可以进去。

A:这是android微信客户端旧版本的bug, 请下载最新版本的 6.5.3 客户端。

Q:请问目前微信小程序支持蓝牙吗?

A:目前不支持。

Q:分享功能真机没有效果?

A:这是android微信客户端旧版本的bug, 请下载最新版本的 6.5.3 客户端。

Q:强制使用https,开发和测试环境下怎么联调和测试?

A:「微信web开发者工具」->「项目」->「开发环境不校验请求域名及TLS版本」。

Q:wx.showToast()方法无效。

调用wx.request请求网络然后在


complete: function (res) {
 
// complete
wx.hideToast();
}

在成功方法里面如果要进行showToast的时候感觉无效,并没有弹出提示框。

A:success 回调调用是在 complete 之前的,如果在 success showToast,下一步 complete hideToast 就会被冲掉 showToast

Q:picker 组件中的文字大小是否支持修改?

A:不支持修改。

Q:tabBar的图片在android和ios上面大小差异太大。

A:这是android微信客户端旧版本的bug, 请下载最新版本的 6.5.3 客户端

Q:tabbar 页面返回问题。非首页的tabbar 页面 点击左上角返回箭头时如何返回到小程序首页? 现在是直接退出小程序了

A:创建新页面时用 navigateTo 才会新建新页面,同时保留旧页面,如果用 redirectTo 是在当前页面内跳转。

Q:问下 wx.request() 怎么设置成同步。

A:reqeust是发起网络请求。没有同步接口。

Q:最新mac版工具不可用,进来就出现获取appservice 失败。

A:工具设置中选择直接链接网络 。或者 系统中的代理软件设置工具直接链接网络。

Q:真机 view overflow-y下滑会很卡。

A:父层需要 position:relative; 加了之后就不卡了。

总结

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

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