有同事提醒我说,小程序出了云开发功能。我看了一下觉得蛮有意思的,琢磨着可以给老爸做一个买马(广东民间流行的一种六合彩赌博)的小程序。然后用了2个周末的时间,完成了!
总体来说小程序的官方说明很详细,但是感觉对一些容易踩坑的地方强调得不够。导致需要通篇阅读完官方说明才好动手,否则遇到问题再搜索时,不好找到对应的地方。
简单描述就是:支持下注、查看下注记录、开奖、查看玩家排行4个功能的小程序。
制作过程不多说,跟着新手指引操作一遍基本就会了 - 小程序和云开发分别有一个新手指引(https://developers.weixin.qq.com/miniprogram/dev/)。这里总结一下我遇到的几个问题:
1、关于云函数操作数据库
我最开始的时候用云函数操作数据库不成功。于是就偷懒直接在小程序端用js来操作数据库。后来发现小程序端只有权限查询用户自己生成的数据。那么像查看排行榜这种功能就不能实现了。无奈还是要用云函数来实现。后来发现改用Promise 风格就可以操作数据库了(不知道是不是我之前调用方法有问题)。
2、一个云函数搞定数据库增删改查
如果给增删改查各写一个云函数会很不优雅。在网上搜到了别人分享的一段代码,可以一个函数完成增删改查。果断拿过来用!
3、关于js的同步和异步机制
以前写python都是默认同步执行的。而js是异步执行的。这让一时转不过弯的我走了很多弯路。后来看了这篇文章(https://segmentfault.com/a/1190000008922457)才算有些概念。针对我自己的使用场景,我总结出2条方法:
1)尽量不要用两层循环+回调嵌套。如果一定要用,就在第一层循环里将for(var i;xxx)改成for(let i;xxx) - 这是从上面那篇文章里学到的方法。
2)多用数组。将循环的内容保存的数组里,然后在循环结束后将整个数组传给下一个操作。
4、关于授权
使用自己的手机调试的时候不存在授权的问题。但如果使用别人的手机,就会出现获取不到用户名以及用户头像的情况。这是需要用户授权。这一点在官方文档里说的很清楚。但你要搜索这段说明需要找很久:
https://developers.weixin.qq.com/miniprogram/dev/api/authorize-index.html?search-key=%E6%8E%88%E6%9D%83
5、关于爬取网页信息
可能是处于安全考虑。必须经过登记的合法域名才能在小程序的request方法访问。而我需要访问六合彩开奖结果的域名明显不可能获得通过。所以我就只能发布实验室版本(实验室版本可以关闭域名合法性检测功能),并把用户添加到研发团队成员中。最多可以添加30人。
四、总结
小程序端的开发和写web前端页面差不多。而小程序云开发可以很方便地处理用户信息(opendi,用户头像什么的)。如果要写一个后台交互不复杂的小程序,小程序云开发是个不错的选择。如果后台交互比较多的话,可能还是自己搞一个后端服务器好一点。
官方文档:
https://developers.weixin.qq.com/miniprogram/dev/wxcloud/basis/capabilities.html
后期我们会根据每个维度陆续写相关的测试文章,如果你有兴趣,请关注我们哦。
长按指纹识别图中的二维码,获取更多测试干货分享!
将我们公众号置顶
不会漏掉我们的原创干货哦!
var first_sceen__time = (+new Date());if ("" == 1 && document.getElementById('js_content')) { document.getElementById('js_content').addEventListener("selectstart",function(e){ e.preventDefault(); }); } (function(){ if (navigator.userAgent.indexOf("WindowsWechat") != -1){ var link = document.createElement('link'); var head = document.getElementsByTagName('head')[0]; link.rel = 'stylesheet'; link.type = 'text/css'; link.href = "//res.wx.qq.com/mmbizwap/zh_CN/htmledition/style/page/appmsg_new/winwx45ba31.css"; head.appendChild(link); } })();
easongao
长按二维码向我转账
受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。
阅读
分享 在看
已同步到看一看
确定
已同步到看一看写下你的想法
最多200字,当前共字 发送
已发送
确定
写下你的想法...
取消
确定
最多200字,当前共字
发送中
微信扫一扫 关注该公众号
微信扫一扫 使用小程序
即将打开""小程序