公司一直说要搞小程序,说了几个月,最近才算落地,一个很小的项目,就结果来讲,勉强让自己窥得小程序门径。
下面总结一下,为了弄好小程序,所学到的知识,以及项目中遇到的问题以及解决的办法。纯属个人见解。
1,微信小程序,是在封装好的js、css、html基础上做开发,在微信端做开发,因而也少了很多兼容性问题;
2,微信小程序的app.js 、app.json、app.wxss是全局配置文件,一个小程序只有一个App实例,而每个页面有一个page实例;
3,页面可以通过创建app的实例,也就是getApp()的方法获取app.js中的全局数据;
4,可以实现.wxss的模块化使用,具体是通过@import的方式
5,微信小程序可以直接animation的@keyframes,不需要做兼容性处理
6,css里面依然有id和css之分
7,html元素发生了很大变化,第一认识是view代替的是div,而text的代替的是span
8,js里面的结构和vue有着很大的相似性,存在生命周期的概念,初始化渲染onReady,onLoad监听页面加载,onShow监听显示,还是有监听隐藏onHide等等
9,数据存在data里面,但又不同vue,对数据的访问需要带上data,对数据的更改类似react的setState,使用setData()
10,wx.showToast()类似原生js的alert,用于提示
11,wx.request也就是ajax,用于远程请求数据
12,其它还有form表单的数据提交,数据挂载在时间对象的detail上面,依然采用表单元素的name区分
13,关于体验版openId的获取问题,笔者花了两天时间,终于搞清楚了,一开始获取openId直接在小程序端调接口,结果是在体验版的调试状态可以在非调式状态就是不可以,
然后各种百度,最后尝试前端传递wx.login的code给后端,而后端获取openId在传回的方法,终于是解决了问题。
未完待续。
请发表评论