微信小程序开发必看的四十个技巧总结
这篇文章主要给大家介绍了微信小程序开发必看的四十个技巧总结的相关资料,相信对大家的学习或者使用微信小程序具有一定的参考借鉴价值,所以特别推荐给大家,需要的朋友们可以一起来看看吧。
前言
微信“小程序”正式上线一周时间,相关话题持续升温。支付宝开发“小程序”的消息也随即曝出,互联网巨头们摩拳擦掌,不少网友调侃说,这势头感觉要挑战现有的“APP帝国”了。那么,面对如此炙手可热的小程序,WeX5移动开发云也没有闲着,经过全网搜索,为大家筛选出一条小程序开发者的必读文章,内容涵盖小程序开发实战需要注意的40个技术点,供大家参考!
Q:为什么脚本内不能使用window等对象
A:页面的脚本逻辑是在JsCore中运行,JsCore是一个没有窗口对象的环境,所以不能在脚本中使用window,也无法在脚本中操作组件
Q:为什么 zepto/jquery 无法使用
A:zepto/jquery 会使用到window对象和document对象,所以无法使用。
Q:wx.navigateTo无法打开页面
A:一个应用同时只能打开5个页面,当已经打开了5个页面之后,wx.navigateTo
不能正常打开新页面。请避免多层级的交互方式,或者使用wx.re<a href="http://www.php.cn/wiki/1275.html" target="_blank">dir</a>ectTo
Q:样式表不支持级联选择器
Q:本地资源无法通过 css 获取
A:<a href="http://www.php.cn/wiki/895.html" target="_blank">background-image</a>
:可以使用网络图片,或者 base64,或者使用
Q:如何修改窗口的背景色
A:使用 page 标签选择器,可以修改顶层节点的样式
page { display: block; min-height: 100%; background-color: red; }
Q:为什么上传不成功
A:为了提升体验流畅度,编译后的代码包大小需小于 1MB ,大于 1MB 的代码包将上传失败。
Q:HTTPS 请求不成功
A:tls 仅支持 1.2 及以上版本
Q:网络请求的 referer
A:网络请求的 referer 是不可以设置的,格式固定为 https://servicewechat.com/{appid}/{version}/page-frame.html,其中 {appid} 为小程序的 appid, {version} 为小程序的版本号,版本号为 0 表示为开发版。
Q:不能直接操作 Page.data
A:避免在直接对 Page.data
进行赋值修改,请使用 Page.<a href="http://www.php.cn/code/8209.html" target="_blank">set</a>Data
进行操作才能将数据同步到页面中进行渲染怎么获取用户输入
能够获取用户输入的组件,需要使用组件的属性bindchange将用户的输入内容同步到 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:微信小程序支持fetch或者promise吗?
A:promise工具目前不支持,fetch 客户端不支持 工具下个版本保持统一。
Q:touchmove滑动事件里面的currentTarget. id值不变动。
A:ouchmove / touchend 事件的 target / currentTarget 会永远是 touchstart 时的 target / currentTarget 。
Q:wx.request的POST方法的参数传输服务器接收不到的bug。
A:wx.request post 的 content-type 默认为 ‘application/<a href="http://www.php.cn/wiki/1488.html" target="_blank">json</a>
'
如果服务器没有用到 json 解释的话,可以把 content-type
设置回 urlencoded
。
wx.request({ .... method: "POST", header: { "content-type": "application/x-www-form-urlencoded" }, ... })
Q:wx.uploadFile在手机上返回http码403。
A:安卓的微信升级到6.5.2及其以上版本。
Q:小程序SVG支持吗?
A:image的src放远程svg可以,background-image
里也可以。
Q:wx.request返回statusCode两端类型不一致。
A:确实有这个问题,稍后的版本将会修复。
Q:关于组件的动态生成与销毁?
A:不支持动态生成组件,但可以用 wx:for 去渲染多个。
Q:小程序支持热更吗?
A:不支持开发者自行更替。
Q:一些接口的回调IOS和Android不一致,例如支付接口,用户取消支付后,ios只回调complete方法,android则回调fail方法,官方文档也没有任何回调说明,造成开发很困难;类似的还有图片选择接口,分享接口等等。
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:父层需要 <a href="http://www.php.cn/wiki/902.html" target="_blank">position</a>:relative;
加了之后就不卡了。
以上是微信小程序开发必看的四十个技巧总结的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

闲鱼官方微信小程序悄然上线,在小程序中可以发布闲置与买家/卖家私信交流、查看个人资料及订单、搜索物品等,有用好奇闲鱼微信小程序叫什么,现在快来看一下。闲鱼微信小程序叫什么答案:闲鱼,闲置交易二手买卖估价回收。1、在小程序中可以发布闲置、与买家/卖家私信交流、查看个人资料及订单、搜索指定物品等功能;2、在小程序的页面中有首页、附近、发闲置、消息、我的5项功能;3、想要使用的话必要要开通微信支付才可以购买;

微信小程序实现图片上传功能随着移动互联网的发展,微信小程序已经成为了人们生活中不可或缺的一部分。微信小程序不仅提供了丰富的应用场景,还支持开发者自定义功能,其中包括图片上传功能。本文将介绍如何在微信小程序中实现图片上传功能,并提供具体的代码示例。一、前期准备工作在开始编写代码之前,我们需要先下载并安装微信开发者工具,并注册成为微信开发者。同时,还需要了解微信

实现微信小程序中的下拉菜单效果,需要具体代码示例随着移动互联网的普及,微信小程序成为了互联网开发的重要一环,越来越多的人开始关注和使用微信小程序。微信小程序的开发相比传统的APP开发更加简便快捷,但也需要掌握一定的开发技巧。在微信小程序的开发中,下拉菜单是一个常见的UI组件,实现了更好的用户操作体验。本文将详细介绍如何在微信小程序中实现下拉菜单效果,并提供具

实现微信小程序中的图片滤镜效果随着社交媒体应用的流行,人们越来越喜欢在照片中应用滤镜效果,以增强照片的艺术效果和吸引力。在微信小程序中也可以实现图片滤镜效果,为用户提供更多有趣和创造性的照片编辑功能。本文将介绍如何在微信小程序中实现图片滤镜效果,并提供具体的代码示例。首先,我们需要在微信小程序中使用canvas组件来加载和编辑图片。canvas组件可以在页面

闲鱼官方微信小程序已经悄然上线,它为用户提供了一个便捷的平台,让你可以轻松地发布和交易闲置物品。在小程序中,你可以与买家或卖家进行私信交流,查看个人资料和订单,以及搜索你想要的物品。那么闲鱼在微信小程序中究竟叫什么呢,这篇教程攻略将为您详细介绍,想要了解的用户们快来跟着本文继续阅读吧!闲鱼微信小程序叫什么答案:闲鱼,闲置交易二手买卖估价回收。1、在小程序中可以发布闲置、与买家/卖家私信交流、查看个人资料及订单、搜索指定物品等功能;2、在小程序的页面中有首页、附近、发闲置、消息、我的5项功能;3、

使用微信小程序实现轮播图切换效果微信小程序是一种轻量级的应用程序,具有简单、高效的开发和使用特点。在微信小程序中,实现轮播图切换效果是常见的需求。本文将介绍如何使用微信小程序实现轮播图切换效果,并给出具体的代码示例。首先,在微信小程序的页面文件中,添加一个轮播图组件。例如,可以使用<swiper>标签来实现轮播图的切换效果。在该组件中,可以通过b

实现微信小程序中的滑动删除功能,需要具体代码示例随着微信小程序的流行,开发者们在开发过程中经常会遇到一些常见功能的实现问题。其中,滑动删除功能是一个常见、常用的功能需求。本文将为大家详细介绍如何在微信小程序中实现滑动删除功能,并给出具体的代码示例。一、需求分析在微信小程序中,滑动删除功能的实现涉及到以下要点:列表展示:要显示可滑动删除的列表,每个列表项需要包

实现微信小程序中的图片旋转效果,需要具体代码示例微信小程序是一种轻量级的应用程序,为用户提供了丰富的功能和良好的用户体验。在小程序中,开发者可以利用各种组件和API来实现各种效果。其中,图片旋转效果是一种常见的动画效果,可以为小程序增添趣味性和视觉效果。在微信小程序中实现图片旋转效果,需要使用小程序提供的动画API。下面是一个具体的代码示例,展示了如何在小程
