美文网首页
微信小程序

微信小程序

作者: 酷热summer | 来源:发表于2017-09-04 11:12 被阅读12次

    最近公司开始搞小程序开发,没有什么基础,只能从头开始学习。

    小程序主要适合做简单的,用完即走的应用,使用低频,且对性能要求不高。小程序的好处也在于不需要下载安装即可使用。

    拿我自己手机里面的几个App来举例子,如知乎、斗鱼、王者荣耀这几款App,都属于逻辑业务比较复杂,每个App中包括几个不同主要内容,比如知乎下主要有话题、专栏、Live、电子书几个功能,并且用户登录后会保存用户的一些使用习惯、关注内容等方面内容。

    而像滴滴打车这种,做成小程序则是比较好的选择。用户操作时只需要提交表单,业务逻辑比较简单,满足用完即走,也不需要下载体积较大的App,节省手机内存。

    再比如,像豆瓣、美团、银行类软件,功能算是比较庞大的,是可以将其中的某一部分常用功能拆分出来做成小程序,图豆瓣电影、豆瓣读书、美团外卖、银行账单查询。

    ----------------------------------------我是分割线-------------------------------------------------

    做完小程序后发现也比较简单,小程序秉承的思想跟vue.js非常类似,都是通过操作数据来实现页面交互。有些语法规则跟vue很像,做完小程序再回去看vue会有一点点崩溃,这两个语法确实有相似的地方,但是相似又不相同,WTF!

    whatever,项目做完我还是整理一下整个项目中遇到的一些问题做个汇总,以后参考用:

    1、关于获取用户的唯一标识openid

    具体操作请参考微信小程序 获取用户信息。总的来说就是通过前台我们只能获取到用户的CODE,然后我们将code传到后台,后台用这个code和appid&secret key来获取appid。具体不赘述,详情看链接。

    2、打开几个页面之后,页面中所有点击事件不响应

    这个bug我花费了我很多时间,其实页面中事件都是存在的,主要是因为每次跳转页面时都使用的是wx.navigateTo(),然而小程序在打开页面超过4个还是5个之后,对于新打开的页面内js不在响应,需要重新加载,最好的解决方法是在跳转页面时使用wx.reLaunch();

    3、web-view

    小程序开通了web-view之后为我们简化了很多开发工作,我们可以直接将开发好的H5页面直接嵌套到小程序中,不必再重复开发,关于内嵌页面的配置直接看官网,不在赘述。web-view存在目前还存在两个问题,一是小程序的内嵌页面在微信版本大于6.5.16下能够完整显示,低于此版本,打开web-view为空白页。因此,如果客户未更新客户端,会导致此页面无法正常显示,要么抛弃低版本 用户,要么只能将页面写成小程序内页。二是小程序和web-view之间不能够传递数据,也就是说,小程序内的数据就是小程序的,h5的数据就是h5的,如果需要将用户信息传递到h5中,这种情况无法实现。

    4、设备兼容性

    在此次项目中,测试机型主要有iphone6s/iphone7s/华为Mate9/华为Mate8/魅族这几种机型。其中各机型适配良好,除了魅族。讲真,魅族有个tabbar在最底下,每次需要输入的时候弹出的键盘会被tabbar挡住数字0和删除的那一行,这个问题最终也没有找到比较好的解决方案。

    5、关于换行问题

    有一些格式统一的段落文本,我一般会在data中定义数据,然后在wxml文件中进行循环处理,这样能够大大减少wxml内代码行数,随之而来的问题是,data中文字存在换行,在wxml中换行被忽略。解决的方法是将存在换行的文字放在<text>标签中而不是<view>标签中,亲测可用,非常好用!主要原因不清楚,我觉得应该是view主要用来划分区块,而text是用来展示文本用的,语义化标签应该是这么来的吧。

    大概就记录这么多,强力推荐小程序的社区,很多问题可以在里面找到解决方案,找不到也可以提问,官方回答非常及时,给小哥哥小姐姐们比心!

    相关文章

      网友评论

          本文标题:微信小程序

          本文链接:https://www.haomeiwen.com/subject/fiwsjxtx.html