当前位置: 首页 > 后端技术 > PHP

用Taro写个你画的小程序我猜

时间:2023-03-29 17:26:17 PHP

选择技术型微信小程序用Taro(功能不多所以没用Redux),后台是php写的,websocket是过去常常选择工人来做。这里用Taro做画布有问题,不支持h5。类型选择taro的问题不支持canvas的H5。下面详细说一下小程序的登录。我的做法是写一个登录组件,然后把登录组件添加到布局返回({this.props.children})这里微信异步获取用户信息,获取openid后台也是异步的,不过我更喜欢整个过程同步运行。这样写的代码也好看但是不支持同步处理。这里使用regeneratorRuntimeawaitPromise来处理websocket断线重连的问题。小程序很快在后台运行,websocket将断开连接。使用onshow(componentDidShow)方法。这时候后台的websocket可能已经失去了结局。创建websocket的方式会获取connectionid,将uid对应的id放到redis中,发送消息查找带有uid的connectionid。游戏同步问题,这里用到了状态同步的方法。状态修改通过websocket同步。将websocket添加到typescript和游戏的整个画布后,代码会变得更加繁琐。这个东西可以保证得到正确的类型判断提示。导出类UserType{类型:字符串=“”;昵称:string="";uid:数字=0;img:string='';}exportclassGame{room:string;uid:数字;时间:人数=100;开始:布尔值=假;名称:字符串=“”;提示:Array=[];userList:Array=[];}publicstate={socket:Object,user:newUserType,game:newGame,log:Array>()}最后taro使用的还是挺爽的!!