news 2026/4/30 17:49:47

互联网医院13用户体系基石——账号注册与登录态的“无感恢复”

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
互联网医院13用户体系基石——账号注册与登录态的“无感恢复”

目录

  • 1. 用户登录设计思路
  • 2. 数据库设计:用户基础信息表
  • 3. 用户登录流程
  • 4. 个人中心页面搭建
    • 4.1 创建页面
    • 4.2 创建变量
    • 4.3 调用登录
    • 4.4 视图搭建:根据状态动态切换
    • 4.5 显示昵称和头像
  • 5. 总结

1. 用户登录设计思路

很多初次接触低代码的开发者,还是按照既定思维,一上来就搭建个登录页面,要求用户输入用户名和密码进行登录。

这个思路是错的,因为云开发本身提供了登录,你自己搭建一个也无法绕过他的机制。

如果只是使用云开发自带的登录也是不行的,他的用户名和密码登录只针对内部用户,小程序无法使用。

而外部用户局限性很大,输入手机号和验证码就登录注册了,有的小程序需要后台审核才可以使用,这就没办法自定义权限。

而且外部用户的数据表是封闭的,一个是不能通过API读取数据,第二是不可以修改表结构,更不要说做什么权限控制了。

我们在设计的时候就需要先做一个业务表,我们来自己控制结构和权限,实现我们的业务规则。


2. 数据库设计:用户基础信息表

这张表非常轻量,只存用户的身份信息,不存身份证号等敏感医疗数据

表名t_user(用户基础表)

字段名标识类型必填说明
手机号mobile文本核心索引,存 +86…
昵称nickname文本用户展示名称
头像avatar图片/文件存储 cloud:// 路径


3. 用户登录流程

当你已经通过云开发的登录页面,访问到我的页面的时候,这个时候从当前登录对象里就可以获取到用户的手机号。我们可以用这个手机号去查询用户表,如果找到数据,说明这个用户已经注册了,那我们就显示头像和昵称。如果没有找到数据,说明尚未注册,提供注册按钮供用户注册。


4. 个人中心页面搭建

4.1 创建页面

点击创建页面的图标,创建我的页面

切换到布局设计,选择tab栏导航布局,配置我的菜单

4.2 创建变量

先创建一个内置数据表查询,用来读取用户信息

因为编辑器里是获取不到用户的手机号的,我们可以创建一个全局变量来方便调试

配置查询条件的时候,我们就可以先去查用户的手机号,没有我们就给全局的手机号

$w.auth.currentUser.phone||$w.app.dataset.state.phone

然后创建一个页面变量,用来防止页面的抖动

4.3 调用登录

变量定义好之后,什么时候初始化呢?我们可以在页面的生命周期函数中进行加载。选中页面组件,设置页面显示的事件

调用数据查询,触发执行

执行成功时将我们的isLoading设置为false


4.4 视图搭建:根据状态动态切换

低代码本身的机制是比较慢的,他区分不同的版本,个人版查询速度最慢,标准版其次,企业版要稍好一点。

这就会带来一个问题,你会看到页面一加载既有用户注册的视图,又有用户登录的视图,等数据加载完了才会出现一个唯一的视图。

这时候我们就需要用isLoading来控制,先添加一个普通容器,里边添加一个普通容器和一个网格布局

给普通容器绑定条件展示,作为第一个出现的视图

里边添加一个文本组件,显示数据正在加载中

网格布局的条件展示,我们取反就可以

4.5 显示昵称和头像

数据加载完毕之后,我们就需要显示用户的头像和昵称,在网格布局的第一列里添加普通容器,里边添加图片组件和普通容器

设置外层的普通容器布局为横向排列

设置图片的布局模式为裁剪填满,设置宽和高各为60


绑定图片地址,如果用户登录了就从用户的头像绑定,如果未登录我们给一个素材

内层普通容器里添加文本和按钮组件

文本组件也是一样的,如果登录了显示用户的昵称,如果未登录显示匿名用户

给按钮绑定条件展示

这样我们的登录视图就搭建好了


5. 总结

通过这套机制,我们实现了:

  1. 安全:用户只能注册自己的手机号。
  2. 稳健:无论用户怎么切后台,只要再次打开小程序,onShow里的查询逻辑就会自动恢复用户身份,不会出现“变量为空”的白屏 Bug。
  3. 体验:注册完成后无需跳转,视图原地刷新,无缝衔接。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/10 21:22:16

龙芯双周会--硬核的技术讨论会

龙芯爱好者社区创立于 2024 年 10 月 24 日程序员节,是一个由第三方爱好者、行业人员与学生组成的,致力于龙芯(龙架构)软硬件生态建设的互联网社区。 “龙芯双周会”是“龙芯爱好者社区”每两周举办的一次技术交流。在这里没有领…

作者头像 李华
网站建设 2026/4/28 17:24:28

从零到上线:Open-AutoGLM在Windows 10/11的完整部署路径(附脚本工具包)

第一章:Open-AutoGLM部署概述Open-AutoGLM 是一个开源的自动化通用语言模型推理与部署框架,旨在简化大语言模型在生产环境中的集成流程。该框架支持多种后端引擎、动态批处理、模型量化以及 REST/gRPC 接口暴露,适用于高并发、低延迟的 AI 服…

作者头像 李华
网站建设 2026/4/16 16:15:04

如何评估一个公司的测试文化和技术水平?

测试作为核心竞争力的时代‌ 在2025年的今天,软件质量已直接关乎企业的生存与发展。敏捷、DevOps、持续交付等范式普及,使得测试不再仅是开发流程的末端环节,而是贯穿价值交付全程的核心保障与反馈机制。因此,评估一个公司的测试…

作者头像 李华
网站建设 2026/5/1 9:16:03

‌从测试到韧性:软件测试从业者的灾难恢复演练实战指南

测试在灾难恢复中的核心价值‌ 在软件系统的生命周期中,灾难恢复(Disaster Recovery, DR)不仅是运维团队的职责,更是测试从业者保障业务连续性的关键战场。DR流程测试演练通过模拟真实灾难场景(如数据中心故障、网络中…

作者头像 李华
网站建设 2026/4/18 7:12:45

基于Springboot和vue的餐饮管理系统的设计与实现

系统简介 互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人们提供服务。针对信息管理混乱,出错率高,信息安全性差&…

作者头像 李华