说说微信小程序开发的那些坑

微信小程序开发难,难于坑特别多前端

本文首发于http://www.jianshu.com/p/7173...git

坑一:Content-type问题

坑指数:★★★★★es6

Paste_Image.png

官网里面的示例代码中content-type是设置为'application/json'的,然而……!!!github

Paste_Image.png

无限黑人问号,怀疑过豆瓣的接口的问题,怀疑过网络问题,怀疑过人生......web

可是原来是微信开发工具升级后(0.12),请求的header的Content-type写法变了,要改为:json

header: {
  content-type: 'json'
}

这样就能够请求成功了!小程序

p.s:这个问题在交流群遇到最多的提问,微信的文档贻害不浅啊...微信小程序

坑二:Promise库问题

坑指数:★★promise

相信不少前端开发人员都习惯使用Promise,然而目前微信开发工具版本(0.12)不支持Promise,须要本身引用,Bluebird做为最受欢迎的Promise库之一,不少人都会使用它。微信

引入后本地开发没问题,十分顺利,iOS运行也能够,可是Android一打开就会显示‘发生未知错误’

若是是引入了Bluebird,安卓又提示这样的错误,那你须要作的就是换掉Bluebird,比较多人建议是的使用https://github.com/stefanpenn... ,es6-promise-min只有6kb,下载后把原来的Bluebird替换便可。

坑二:Object.assign问题

坑指数:★★★

此坑通常在开发工具开发的时候不会展示,可是Android真机调试的时候问题就来了...

具体症状看你在哪里运用了,小的开发是在request的地方使用了,致使在Android机上数据显示不了(微信开发工具和iOS都正常),最后把Object.assign处理好就ok了

另外根据一些前辈谈及,使用es6会在Android上遇到各类奇奇怪怪的问题,若是赶上只在Android上的问题,能够怀疑是否是使用了什么es6特性。

tips:微信小程序最后的页面大部分都web页,因此一些Android在web上不支持的es6特性,在小程序里面也是有问题的,不过咱们仍是可使用强大的babel进行转换。

以上是开发时候遇过的或者在交流群里面有人踩的坑,有问题欢迎你们讨论~

相关文章
相关标签/搜索