之前用php做后端的时候,因为整体响应比较快,
前端处理时是直接发起请求、返回结果后再响应处理点赞的特效。
虽然这样也会受到网络延迟的影响,但整体还是比较快的。
最近新项目使用了uniCloud云开发,云函数的交互响应速度比传统开发要更慢,
用户点击后如果还等待后端返回再响应点赞特效,就会卡很久。
最后决定,
用户点赞时,前端仅在vuex里记录item_id,
这样无论点多少下,甚至点完再取消也只不过是在vuex里删除掉这个重复的item_id,
真正的请求是发生在用户进入个人中心时自动提交,此时提交是所有点赞(取消)的记录,后端循环处理即可,因为前端不需要等待返回,用户是无法感知到这个过程的。