我是一名安卓程序员以前没有接触过前端开发直到有幸接手了公司的小程序项目。小程序学起来还是很快的品牌影响直到有幸接手了公司的小程序项目。小程序学起来还是很快的对于有编程经验的人看着示例代码对照着官方文档几天就能上手了。自从接触了小程序一直想做一个自己 ...
我是一名安卓程序员以前没有接触过前端开发直到有幸接手了公司的小程序项目。小程序学起来还是很快的对于有编程经验的人看着示例代码对照着官方文档几天就能上手了。
自从接触了小程序一直想做一个自己的东西要是每天有点人用就更好了。
有一天和我家宝宝玩成语接龙突然想到我可以做一个成语接龙的小程序啊!
产品琢磨了两天大概想做成这样:
接龙可以有「所有人可参与」、「指定群成员参与」等类型
不校验是否是成语否则就无法使用「印贼做父」了
成语的读音还是要校验一下的
难免会有人乱填所以每条成语可以赞也可以踩
在有一定数据量后可以增加排行榜
设计想法有了还有两件比较棘手的事:
起个牛逼的名字
求我家宝宝给我画设计图
我想过很多名字「成语接龙吧」、「接下去」、「接吧」、「接一个」...
宝宝:low 爆了叫「碰词」碰也有接的意思成语也是个词嘛
这么 6 的名字居然有人先想到了于是最终决定用「碰词er」
随便放两张设计图美如画啥的就不说了:
下面说一下在开发方面几个我认为值得一提的地方。
获取用户信息现在大部分的小程序都是一打开就弹出用户信息授权框有的甚至强制需要授权才可使用。我之前做的一个也是需要拿到 unionId 去登录才能使用的为此我还写过一篇文章说明如何实现。
但显然微信认为这是一个很不好的体验。在用户没有接触你的小程序之前凭什么要信任你把自己的用户信息暴露给你。
为了规范用户信息的获取官方出了这篇文章:获取用户信息方案介绍(FAQ 里面有两个问题还是我提的)
刚好拿这个小程序来实践一下。
首先明确什么情况下需要用到用户信息。这里需要用户信息显示在成语旁所以在创建接龙或者发送成语之前需要先获取到用户信息。如果你只是进来看看是不需要你任何授权的只有点击了创建接龙的按钮或者发送成语的按钮才会弹出授权提示框。
我是这样做的。没有用户信息时设置 button 的 open-type 为 getUserInfo点击会触发用户信息的获取。要是已经有用户信息了则是一个普通的跳转按钮:
<view class="create-button"> <button wx:if="{{hasUserInfo}}" class="button" bindtap="navigateToCreate"> <image class="img" src="/images/icon_add.png" mode="aspectFit"/> </button> <button wx:else class="button" open-type="getUserInfo" bindgetuserinfo="getUserInfo"> <image class="img" src="/images/icon_add.png" mode="aspectFit"/> </button> </view>当用户确定授权了可以在 bindgetuserinfo 绑定的方法里用 e.detail.userInfo 拿到用户信息。
但还有个问题open-type="getUserInfo" 要到基础库 1.3.0 才能用最好还是做一下低版本兼容处理。
群能力目前小程序已经支持获取到微信群的群 id 和显示群名。