EOS Low-Code Platform 8 EOS Low-Code Platform 8
产品简介
学习指南
更新说明
安装与集成
上线指南
初见EOS
低代码开发手册
专业代码开发手册
专题场景实战
公共服务框架
应用运行治理
最佳实践
运维指南
  • 移动端适配问题排查与解决手册
  • 现象一:移动端按钮点击无响应或功能不生效
  • 现象二:移动端页面布局错乱、遮挡或滚动异常
  • 现象三:移动端特定组件显示或功能异常
  • 预防措施

# 移动端适配问题排查与解决手册

当您在移动端(手机、Pad)使用 EOS 平台时,遇到样式错乱、功能失效或组件显示异常等问题,请根据以下典型现象进行排查。

# 现象一:移动端按钮点击无响应或功能不生效

典型表现:

  • 自定义按钮(如发起流程、撤销)在移动端点击后无反应。
  • this.Api.hideElements、this.Api.showElements 等 API 在移动端无效。
  • 弹窗选择打开视图后,视图的搜索条件不显示。

常见原因:

  1. 前端包版本不匹配:PC 端和移动端的前端包未同步更新,或移动端包版本过低,缺少对应功能的支持。
  2. API 兼容性问题:某些在 PC 端可用的 API,在移动端并未实现或实现方式不同(如 this.Api.hideElements 在特定版本中存在缺陷)。
  3. 缓存问题:浏览器或 APP 缓存了旧的 JavaScript/CSS 文件,导致新功能未加载。

解决步骤:

  1. 检查并更新移动端前端包:
    • 确认当前使用的移动端前端包(mobile 目录下的资源)是否为最新版本。
    • 如果问题在更新 PC 端后出现,通常需要 同步更新移动端的前端包。许多补丁说明中会明确指出“须同时更新 pc 端和 mobile 端的前端包”。
  2. 清理浏览器/APP 缓存:
    • 在移动端浏览器设置中清除缓存数据。
    • 如果是集成在 APP 内的 H5 页面,尝试重启 APP 或使用无痕模式访问进行测试。
  3. 替换特定组件包:
    • 如果问题是特定组件(如 pm-textarea)无法编译或显示,在确认包版本无误后,可以尝试 单独替换 components 文件夹,而不是整个移动端包。部分案例显示,替换整个包后问题依旧,但单独替换 components 后恢复正常。
  4. 调试移动端代码(开启 vConsole):
    • 在移动端页面上开启调试工具,查看具体的报错信息。
    • 开启方法:修改移动端部署目录下的 config/app-config.json 文件,添加 "isDebug": true,然后重启 Nginx 或刷新页面。通常在页面右下角会出现 vConsole 按钮,点击即可查看控制台日志。

# 现象二:移动端页面布局错乱、遮挡或滚动异常

典型表现:

  • 页面底部按钮被底部菜单栏遮挡。
  • 使用卡片组件或子表格后,页面无法上下滑动(卡死)。
  • 表单字段显示不全,或出现大面积空白。

常见原因:

  1. 高度计算错误:移动端页面底部工具栏与表单内容的高度未正确计算,导致留白或遮挡。
  2. CSS 样式冲突:项目自定义的全局 CSS 与 EOS 移动端框架样式冲突,导致布局异常。
  3. 组件渲染问题:特定组件(如卡片、子表格)在移动端渲染时未正确处理滚动容器。

解决步骤:

  1. 更新修复补丁:
    • 针对底部按钮遮挡、页面无法滚动等问题,产品已发布过相关补丁。请确保已应用最新的移动端补丁。
  2. 检查并注释自定义 CSS:
    • 如果在应用中心-首选项中添加了全局 CSS,尝试暂时注释掉,排查是否因样式冲突导致。
    • 检查项目自身是否引入了会影响移动端滚动或定位的 CSS。
  3. 使用分组控制替代显隐:
    • 如果因为组件动态显隐(hideElements 不生效)导致布局问题,可以考虑使用 分组控制 组件,通过控制不同分组的显示条件来实现两套模板的切换,而不是直接隐藏/显示组件。
  4. 为组件设置固定高度:
    • 对于资源容器等高度自适应的组件,可以尝试为其设置一个固定的高度(如 height: 500px;),强制其占位,避免底部留白。

# 现象三:移动端特定组件显示或功能异常

典型表现:

  • 多行文本输入框(pm-textarea)无法编译或显示。
  • 日期选择组件无法清空,或清空按钮在禁用状态下仍可点击。
  • 下拉选择(多选)清空后,再次点击仍保留上一次的选择项。
  • 人员选择组件显示的机构下人员数量与 PC 端不一致。

常见原因:

  1. 组件代码缺陷:特定版本的组件在移动端存在已知 Bug。
  2. 组件配置不一致:移动端的组件配置可能与 PC 端不同步,或缺少必要的扩展属性。
  3. 产品设计差异:部分功能(如人员数量显示)在 PC 端和移动端的设计初衷不同,导致表现不一致。

解决步骤:

  1. 应用最新的组件补丁:
    • 再不顶列表中查找针对该组件问题的补丁,或更新到最前的前端补丁包。
  2. 单独替换组件文件:
    • 如果更新整个前端包风险较大,可以请求售后提供单个组件的修复文件(如 components 文件夹),进行精确替换。
  3. 通过扩展属性或代码调整:
    • 清空按钮:如果日期组件在禁用状态下仍有清空按钮,可以在移动端通过 CSS 隐藏 .van-field__clear 来解决。
    • 人员数量:如需与 PC 端保持一致(不显示数量),可以考虑升级到 EOS 8.3.3 版本,该版本已优化此问题。
    • 下拉框渲染:对于下拉框清空后仍保留选中项的问题,更新修复补丁。

# 预防措施

  • 建立同步更新机制:在更新 PC 端前端包后,务必同时更新移动端前端包,确保两端功能对齐。
  • 提前进行移动端测试:在开发低开应用时,应频繁使用 IDE 的移动端预览功能,并在发布前在真机上进行全面测试。
  • 关注补丁说明:在申请或应用补丁时,仔细阅读补丁报告,确认其是否同时包含 PC 端和移动端的修复。

← 启动失败问题排查解决指南 升级迁移问题排查解决指南 →