微信小程序是微信平台上新推出的应用形式,是一种全新的基于微信生态的应用形态,它不需要用户下载安装即可直接在微信中使用,跨平台,给用户带来更加便捷的使用体验。微信小程序是基于微信webview内核实现的,由于一些技术上的约束和限制,所以在使用过程中,会有一些需要注意的坑点。
1. 资源加载
微信小程序虽然看似在微信内嵌了一个网页,但实际上由于其是单个页面应用,所以并不是传统的html页面,要求在使用时尽量将css、js、font、image都集中放在一个目录下,避免资源请求多造成页面加载速度变慢。
2. 不支持document
微信小程序并不支持document对象,所以在编写js中如果使用了document相关的API,会导致程序崩溃,这是需要注意的点。
3. API限制
虽然微信小程序提供了一些API,但是和传统的浏览器还是有很大的差别,部分API并不支持,如Date、BOM等,在使用时要进行特殊处理。
4. 数据通信
微信小程序中数据通信使用的是wx.request,request是一个异步网络API,调用时会返回一个Promise对象,在完成时处理。
5. 生命周期
由于小程序的特殊性,不同于传统的网页,微信小程序页面具有自己的生命周期,当用户进入或离开小程序时都会触发不同周期的事件,这些事件带给我们数据更新、平滑过渡等应用的实现功能,需要开发人员在开发过程中好好利用这些生命周期。
6. 代码封装
在微信小程序中,代码封装也是需要我们注重的,这并不是指过分的模块化和封装,而是在开发过程中根据实际情况对代码进行良好的分层和规划,使得代码更加清晰易读。
7. 验证码
微信小程序中图片验证码的实现较为麻烦,需要前后端配合,前端获取验证码后将其上传至服务器,服务器根据验证码返回结果,前端再进行后续操作。
总的来说,微信小程序开发在很多方面和传统网页或应用有着不同的约束和限制,需要我们在开发过程中认真对待这些坑点,合理规划代码,充分利用小程序的生命周期,才能高效地完成开发任务。