从零开始搭建互联网医院登录页:基于云开发的实战教程
本周起,我们将以云开发个人版为工具,开启一系列实战教学。此前已在周末完成了原型设计,项目以一家大型三甲医院为蓝本,目标是复刻一个完整的互联网医院系统。本文作为系列首篇,重点讲解如何搭建符合合规要求的登录页面。
一、为何需要自定义登录页?
有读者可能会提出疑问:云开发平台本身已提供默认登录功能,为何还要自行开发登录页?这与小程序的合规政策及云开发机制之间的冲突密切相关。
根据微信小程序的相关规定,应用首页必须支持公开访问,禁止强制用户登录。然而,云开发默认采用强制登录策略。虽然可通过配置将页面设为“公开”,但此时无法获取用户信息,难以满足实际业务需求。
为避免后期因合规问题导致上线受阻,我们选择主动构建独立登录页。通过此页面明确告知用户:本应用将收集个人信息,若不同意相关协议,则建议停止使用。这一做法既保障了用户体验,也确保了后续审核的顺利通过。
二、数据模型的设计与创建
在实现登录逻辑前,需先准备用户协议和隐私协议的展示内容。为此,我们需要建立对应的数据模型来存储和管理这些文本信息。本次选用的是 MySQL 数据库,主要因其具备灵活的 SQL 编辑能力,在进行数据统计与分析时效率更高。
操作步骤如下:
- 进入数据模型管理界面,点击“+”号新增模型
- 填写模型名称与唯一标识
- 添加第一个字段“用户协议”,类型设置为富文本
- 添加第二个字段“隐私协议”,同样选择富文本类型
- 权限配置:设置为“所有人可读,仅本人可修改”
三、后台管理应用的搭建
完成数据表结构后,接下来需要构建一个后台管理系统,便于管理员维护协议内容。我们使用微搭低代码平台进行开发。
首先,在微搭中切换至“管理应用”模块,选择从空白模板创建新应用。
创建完成后,点击右上角“页面设计”按钮,进入可视化设计模式。
3.1 页面创建与菜单布局
点击“创建页面”图标,开始新建管理页面。
输入页面标题后,进入布局设计阶段。
选择左侧导航布局,并在右侧点击“一键生成菜单”快速生成菜单结构。
删除多余的空白页,仅保留“隐私协议”条目。
进一步优化界面细节:
- 将左上角标题文字修改为“管理后台”
- 更换左下角图标为退出图标
- 绑定图标的点击事件为“退出登录”动作
返回页面设计界面,选中主组件并设置整体布局为“左侧导航布局”。
3.2 配置内容展示区域
在内容插槽中插入布局组件,并在其内部添加“数据表格”组件。
数据源选择“登录配置”,并勾选所有适用场景。
借助豆包等辅助工具生成标准格式的用户协议与隐私协议文本内容。
通过表格中的“新建”按钮,录入协议具体内容并保存。
四、小程序前端页面开发
当后台数据准备就绪后,即可着手开发面向用户的微信小程序端页面。
切换至“小程序应用”模块,点击“从空白创建”启动新项目。
填写应用名称,并启用登录访问控制功能。
4.1 登录页结构搭建
系统默认生成一个空白页面,建议将其重命名为“登录页”以便识别。
在页面中依次添加多个普通容器,并配置相应样式以实现理想布局效果。
第一个容器使用以下样式代码:
:root {
height: 100vh;
background-color: #4080FF;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding-left: 1.5rem;
padding-right: 1.5rem;
}
第二个容器添加如下样式:
width: 100%; background-color: white; border-radius: 1.5rem; padding: 2rem; position: relative; box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
第三个容器用于放置顶部装饰元素,样式如下:
position: absolute; top: -3rem; left: 50%; transform: translateX(-50%); width: 6rem; height: 6rem; background-color: white; border-radius: 1.5rem; display: flex; align-items: center; justify-content: center; box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
在该容器内插入图标组件,并选择“大楼”类图标作为视觉标识。
继续添加最后一个普通容器,设置其样式为:
:root {
margin-top: 2.5rem;
text-align: center;
margin-bottom: 2rem;
}
最终效果预览
完成上述所有步骤后,登录页将呈现出清晰的层级结构与良好的交互体验:蓝色背景衬托出中央白色卡片式登录框,顶部配有医院形象图标,下方有序展示协议内容入口,整体风格简洁专业,符合医疗类应用的视觉定位。
总结
本文详细介绍了基于云开发平台搭建互联网医院登录页的全过程,涵盖数据建模、后台管理应用构建以及小程序前端实现三大核心环节。通过自定义登录流程,不仅解决了云开发与小程序合规要求之间的矛盾,也为后续功能扩展打下坚实基础。下一篇文章将继续深入,介绍身份验证与协议签署逻辑的具体实现方式。
3.2 构建隐私协议区域
在页面布局中,下方的隐私协议勾选区域较为复杂。由于默认复选框组件内置了较多固定样式,难以匹配设计需求,因此我们选择通过图标与文本组件手动构建该功能模块。
首先创建一个布尔类型的变量,用于控制图标的显示状态。
对于未选中状态的圆形图标,设置其条件渲染逻辑,使用该变量的取反值进行判断。
而已选中状态的图标则直接绑定该布尔变量,实现状态联动。
接着为图标添加点击事件,触发时对该布尔变量执行取反操作,从而实现切换效果。
3.3 实现隐私协议查看功能
当前隐私协议内容已存储于数据库中。我们可通过添加一个内置数据表查询操作,读取对应字段内容。
随后插入一个弹窗组件,并在其内部加入富文本展示组件,用以呈现协议详情。
将富文本组件的数据源绑定至查询所得的隐私协议字段。
最后,为“查看协议”文本添加点击事件,用于触发弹窗开启动作。
添加文本与按钮组件并设置样式
首先插入文本组件,并配置相关样式属性:
:root {
font-size: 1.5rem;
font-weight: 700;
margin-bottom: 0.5rem;
}
继续添加另一文本组件,并设定文字颜色以符合界面视觉要求。
接下来添加按钮组件,并定义其外观样式:
:root {
width: 100%;
height: 3rem;
background-color: #07C160;
color: white;
gap: 0.5rem;
font-size: 1rem;
border-radius: 0.75rem;
box-shadow: none;
margin: 10px 0px 1.5rem;
}
最终效果展示
当用户进入小程序时,将自动跳转至登录页面。
点击“用户服务协议”可弹出完整内容进行查阅。
同时支持图标勾选操作,交互流畅直观。
总结
本文详细讲解了用户登录页的搭建流程,涵盖数据模型创建、后台管理应用构建以及小程序前端页面开发。掌握低代码平台的组件运用与样式配置技巧,能够高效实现多样化的前端界面效果。


雷达卡


京公网安备 11010802022788号







