微信小程序开发中的疑问解答汇总


Posted in Javascript onJuly 03, 2017

前言

最近总结一篇微信小程序解答,作为小程序填坑人深有体会这里的变化,小程序刚发布消息的时候我就说了一个观点,只要小程序提供的组件或API丰富,稳定,兼容性好,才能实现小程序快速开发的理念,先如今还有很多组件的兼容不理想,有一些还在的优化中,因基于小程序这个平台开发限制很大,只能坐等中。。。如果想用第三方库来实现,小程序明文规定不支持第三方库的做法,这样做最终小程序审核环节百分百的不通过。

1.scroll-view 在 iOS 上存在 bug

在使用这个组件开发页面的时候,因自带滚动效果,Y 轴滑动在下拉触发 iOS 原生的橡皮筋效果时,scroll-view 出现不能滑动的 bug,在 Android 系统下无橡皮筋效果则没有这个 bug。现在最新版本0.11.122100如果还存在那就是下个版本会处理的。

2.微信 6.3.31 版本中 input 的 focus 无效

在小程序更新日志记录中以解决

2016-12-22 更新日志

1.F 修复 <input/> 组件在开发者工具上失去焦点时清空内容的问题

3.在 iOS 使用导航跳转页面的时候,偶尔会出现白屏的 bug

官方已知道,会在后期版本修复

4.tabBar 图标在各个平台上的大小不一致

官方已知道,会在后期版本修复

5.iOS 上返回导航栏存在被修改的 bug

tabBar 的问题官方已经知晓,下个版本会增加 switchTab 的接口让开发者直接控制 tabBar 的切换

6.地图覆盖物无法添加点击事件,无法获取用户点击了那个覆盖物

官方已知道,会在后期版本修复

7.小程序是否可以变相支持 webview

不支持

8.Android 微信更新至 6.3.32 后,不支持从普通页跳转到带 tab 栏的页面

新版本会有专门的 API 来跳转到 tabbar 的页面,之前的处理方式会有逻辑问题

9.swiper 如何实现循环轮播

现在版本已 circular 属性支持

10.快速点击多个 input 时,会出现问题

此问题官方以修复,等待发布版本

11.调试时,WXML 经常出现空白的情况

已经修复,下个版本的开发工具将会更新

12.scroll-view 重叠时,会出现事件穿透的问题

官方后续会修复

13.Android 下,1rpx 的 border 可能会出现不显示的问题

在部分 Android 的手机中存在小数值的 rpx 显示不全的问题,新版本的微信将修复这个问题

14.能否从小程序中打开普通的网页链接

现在不支持

15.scroll-view 里面有 textarea,它的内容无法变动

官方目前不支持

16.WXSS 文件里编写 CSS 3 动画,点击编译直接就报错了,编译不通过

目前小程序支持很少的css3 属性,官方后期陆续支持更多css3属性

17.在微信小程序的 canvas 相关 API 中,我们发现缺少将 canvas 转换成图片的相关 API 接口

微信6.3.30 已支持 wx.canvasToTemFilePath,可以用于将 canvas 转成图片临时文件路径

18.目前提供的 canvas 绘图接口,不能跟网页原生 API 兼容

是的

19.小程序开发,Tab如何移动到顶部

微信6.3.30 已支持在 tabBar 设置 position 参数

20.在小程序的 API 中是否有获取图片原始宽高的接口

微信6.3.30 已支持,image 组件的 bindload 事件可以返回图片的原始宽高

21.小程序能引用外部的图表库吗,比如 ECharts

官方暂不支持

22.小程序开发时,能否使用自定义的字体图标

自定义字体是支持的,但是需要使用线上字体,并且存放字体的服务器需要允许跨域

23.官方的 ES6 转 ES5 在 Android 上会报错

开发工具提供的 ES6 转 ES5 的功能,只会转换语法,新的 ES6 的 API 例如 Promise 等需要开发者自行引入 Polyfill 或者别的类库来解决

24.wx.getImageInfo 在 Android 上有取不到信息的 bug

微信6.3.31 版本 Android 客户端有这个 bug, 新版本将修复

25.小程序的大小 1 MB 这个控制正式发布的时候会放大吗

目前给出的答案是不会放大

26.getUserInfo 接口获取不到 unionid,该怎么办

需要到微信开放平台网站(https://open.weixin.qq.com)绑定小程序和你的其他公众号或 app,才会返回 unionid

27.微信小程序支持和硬件的交互吗?比如和硬件通过蓝牙或者 Wi-Fi 的方式进行数据通信

官方未来有可能推出此功能

28.录音完成是什么格式

手机上录音目前是 SILK 格式,SILK 是Skype 内部开发的一个语音频编解码器,作为Skype 到Skype 调用的默认编解码器。SILK 在音频带宽、网络码率和复杂度等方面的高度可扩展性使其成为可选择多种模式和应用的编解码器

29.小程序是否开放用户手机通讯录的读取/写入权限

目前不支持

30.iPad 好像无法预览小程序

小程序目前暂不支持 iPad

31.请问小程序里支持把文字、图片、链接转发给好友、朋友圈吗

官方答案:分享能力会很快提供,请留意官方文档

32.checkbox 是否只能通过 checkbox-group 绑定事件

checkbox 不会触发 change 事件, checkbox-group 才会触发

33.滚动页面,滚动到底部,加载新的内容不能实现

微信6.3.30 已支持页面配置 onReachBottom 事件

34. canvas 组件时,不可以保存画布信息

官方答案:暂不支持,我们会很快支持

35.uploadfile 的 header 里面带不了 cookie 参数

微信6.3.31 版本的 iOS 客户端有这个 bug, 新版本即将修复

36.WXML 中 Mustache 语法(双大括号)来绑定数据,如果对应的目标数据是一段 HTML 文本,能不能绑定?应该怎么绑定?

官方目前暂不支持

37.代码里面可以用一些工具库吗?比如可以通过 npm install 这种方式来安装第三方的工具库

官方目前暂不支持

38.好像无法通过 JS 获取图片宽和高,有解决方案吗

目前只能显示设置图片宽高

39.微信小程序有拨打电话和发送 Email 的方法吗

目前之支持拨打电话,暂不支持Email

40.如果是支付给子商户,调用接口跟之前 web 开发的用法是一样的吗

目前暂不支持支付给子商户

41.微信小应用除了自带的 API 接口, 是否支持其他的外部 API 或 JS 插件的加载?

目前暂不支持

42.是否支持视频直播或音频直播,如 HLS

官方答案:我们正在技术上正不断完善,很快将提供支持

43.监听手机 keyboard,如「完成」按钮触发时,执行对应动作,目前未查到相关 API,请问是否有支持

输入框(input/textarea) 后续会提供 bindconfirm 的事件监听属性 ,用于监听「完成」按钮的点击

44.开发工具不支持 Linux 环境以及 Windows 2003/XP 系统吗

目前不支持

45.我在一台机器上同时开发微信小程序和服务器程序,请问微信小程序在开发时怎么访问我本机的服务器呢

目前服务器必须使用域名,不支持本地调试

46.怎样直接给审查人员发反馈

官方答案:我们会在后续的微信公众平台小程序提交审核页面,增加测试帐号(帐号+密码形式),以及审核描述等的填写。关于审核的问题,可以发送邮件至:AppReview@tencent.com,我们会安排专人查看反馈

47.个人开发者不能注册么

现在支持的只有企业、政府、媒体、其他组织,个人开发者还不支持注册

48.在小程序工具编写代码中使用Promise,报错:TypeError: Promise is not a constructor,是哪里出了问题

官方答案:为了保证三端的统一,0.11.112300 版本的工具移除 Promise ,开发者需要自行引入兼容库

所以我自己引入了一个promise.min库,轻量级的并解决了

49.input组件有bindInput事件,而textarea组件没有

在2016年12月22日新增 <textarea/> 组件事件 bindinput

50.切换微信号后上次的数据缓存还会有吗

官方答案:不会清除,但别的用户登录以后,是访问不到上一个用户遗留的数据的

51.定义tabBar之后,wx.navigateTo等跳转会失效

我在开发中没有用官方的tabBar,而是自己写了一个tabBar,所以没有遇到这样的场景,如果用官方的tabBar就用wx.switchTab跳转

52.background-image设置相对路径无法显示图片

可以使用网络地址图片,或者base64或者使用image标签解决问题

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
判断iframe是否加载完成的完美方法
Jan 07 Javascript
JS在textarea光标处插入文本的小例子
Mar 22 Javascript
jQuery简单图表peity.js使用示例
May 02 Javascript
使用AmplifyJS组件配合JavaScript进行编程的指南
Jul 28 Javascript
JavaScript结合Bootstrap仿微信后台多图文界面管理
Jul 22 Javascript
微信小程序 scroll-view实现上拉加载与下拉刷新的实例
Jan 21 Javascript
深入理解Vue官方文档梳理之全局API
Nov 22 Javascript
如何将你的AngularJS1.x应用迁移至React的方法
Feb 01 Javascript
jQuery选择器之层次选择器用法实例分析
Feb 19 jQuery
js计算两个时间差 天 时 分 秒 毫秒的代码
May 21 Javascript
原生js拖拽功能制作滑动条实例代码
Feb 05 Javascript
js 实现Material UI点击涟漪效果示例
Sep 23 Javascript
JavaScript之promise_动力节点Java学院整理
Jul 03 #Javascript
JavaScript之DOM_动力节点Java学院整理
Jul 03 #Javascript
javaScript中封装的各种写法示例(推荐)
Jul 03 #Javascript
JavaScript之class继承_动力节点Java学院整理
Jul 03 #Javascript
JavaScript之浏览器对象_动力节点Java学院整理
Jul 03 #Javascript
JavaScript之underscore_动力节点Java学院整理
Jul 03 #Javascript
React组件生命周期详解
Jul 03 #Javascript
You might like
随时给自己贴的图片加文字的php水印
2007/03/16 PHP
php PDO中文乱码解决办法
2009/07/20 PHP
深入理解PHP之源码目录结构与功能说明
2016/06/01 PHP
JavaScript 事件记录使用说明
2009/10/20 Javascript
VBS通过WMI监视注册表变动的代码
2011/10/27 Javascript
通过url查找a元素应用案例
2014/04/29 Javascript
用js闭包的方法实现多点标注冒泡示例
2014/05/29 Javascript
jQuery实现拖拽效果插件的方法
2015/03/23 Javascript
JS动画效果打开、关闭层的实现方法
2015/05/09 Javascript
jQuery网页选项卡插件rTabs用法实例分析
2015/08/26 Javascript
Zabbix添加Node.js监控的方法
2016/10/20 Javascript
jQuery插件FusionCharts绘制的2D双面积图效果示例【附demo源码】
2017/04/11 jQuery
React操作真实DOM实现动态吸底部的示例
2017/10/23 Javascript
使用Bootrap和Vue实现仿百度搜索功能
2017/10/26 Javascript
Java设计中的Builder模式的介绍
2018/03/22 Javascript
Vue2实时监听表单变化的示例讲解
2018/08/30 Javascript
jQuery实现ajax的嵌套请求案例分析
2019/02/16 jQuery
webpack实践之DLLPlugin 和 DLLReferencePlugin的使用教程
2019/06/10 Javascript
layui监听单元格编辑前后交互的例子
2019/09/16 Javascript
Js代码中的span拼接问题解决
2019/11/22 Javascript
[03:54]DOTA2英雄梦之声_第06期_昆卡
2014/06/23 DOTA
Python创建文件和追加文件内容实例
2014/10/21 Python
Python捕捉和模拟鼠标事件的方法
2015/06/03 Python
matplotlib作图添加表格实例代码
2018/01/23 Python
对Python random模块打乱数组顺序的实例讲解
2018/11/08 Python
Python @property使用方法解析
2019/09/17 Python
pytorch 批次遍历数据集打印数据的例子
2019/12/30 Python
Docker部署Python爬虫项目的方法步骤
2020/01/19 Python
浅谈ROC曲线的最佳阈值如何选取
2020/02/28 Python
Python3如何实现Win10桌面自动切换
2020/08/11 Python
python 使用openpyxl读取excel数据
2021/02/18 Python
英国家庭、花园、汽车和移动解决方案:Easylife Group
2018/05/23 全球购物
如何启动时不需输入用户名与密码
2014/05/09 面试题
领导班子党的群众路线教育实践活动对照检查材料
2014/09/25 职场文书
中国梦党课学习心得体会
2016/01/05 职场文书
SQL Server 忘记密码以及重新添加新账号
2022/04/26 SQL Server