写在后面
已经想着在手机上看一些属性之类的兼容性,就用了 caniuse 这个网站的数据源做了一个简化版的小程序,不过使用率非常低,于是始终想着换成另外一个工具来玩。而后很偶合的事件是,在一次跟好友聚餐的时候聊到了一个打牌记分的话题,于是就有了当初这个小程序。
性能很简略,就是记录下每次的分数,最初结算,依据倍率算出最终的得分,就像这样的一个后果。
有了这个小工具,不论是在麻将桌上还是牌局上都能够不必去思考找笔和纸,或者找其余道具来代替记分了,只须要把每一局的分数记录下来。
而且还能够把以后的房间发给好友,或者扫码的形式退出一起记分,最简略的就是一个人本人记分,只须要手动输出名字就能够了。手动输出的形式因为没有头像,会取名字的第一个字符。
在第一个版本的时候,没有集体核心,而后被厌弃广告,于是就加了一个集体核心页面,再加了一个去广告的性能。😔广告也只是为了把云开发中波及到的费用给支撑住,不赚钱的玩意。
回归正题
还是回到正题说说这次开发中遇到的一个坑吧,这个坑让我非常意外。
小程序陆陆续续写过好些个了,不过云开发模式这还是第一次。对于云开发的益处次要还是鉴权相干的解决以及不须要思考域名(要备案挺麻烦的)。
对于云函数、调用之类的,官网文档以及网络上有一大片的文章能够参考,这个没啥可说的。而要说的是,当我上传了小程序之后,通过 mp 后盾去提交审核时,忽然发现小程序开发工具中的数据都不见了。
是的,记分的时候是通过官网的一个 watch()
办法监听的,只有数据有更新就会同步,其实也就是 socket 而已。
然而为什么数据会不见了呢,而且如同只是不见了局部数据,连忙通过开发工具的 云开发 入口去看一下,后果发现 member
字段中的数组变成空了。
非常不解,幸好有导出备份,不然数据就失落了。失常的状况下,局部用户相干的数据会通过 member
字段来展现的。
刚开始认为是本人的代码上有问题,但回忆了一下,在数据失落之前,如同也没做什么操作,只有在 mp 后盾提交审核而已。难道是跟当初用户隐衷相干操作增强无关?不然怎么会只是失落 member
这个字段呢。
并且起初屡次尝试,每次都会必现这个 member
字段被清空的状况。
思前想后,问题就是在提审这个步骤上,于是问了一下度娘,后果发现了这么一个帖子。
这个 2020 年 1 月 的帖子让我明确了,数据库的平安规定问题。因为这个记分的规定以及本人对数据库字段设计的不理解,当初只能想方法通过其余形式去解决一下。
- 批改数据库,从新调整每个字段的关联性;
- 代码方面同时也要解决一下,在保障操作流程的根底上,增强用户权限方面的解决;
- 啥也不改,每次提审的时候先导出数据,提审实现之后再从新导入数据,反正这个小工具批改发版次数很少;
- 还是啥也不改,在提审之前把平安规定换一个默认的,严格点的,提审完之后再换回来;
总之呢,问题本源是找到了,解决办法也有,但总感觉,权限放开一点,提审代码也不至于把某个字段所有都清空吧。简而言之,只能怪本人能力菜,要不然怎么回踩这个坑呢。
最初
小程序整体曾经实现了,那么会有人用吗?😆