刷刷题35(uniapp中级实际项目问题-2)

1. ‌iOS 底部安全区域留白异常

  • 问题‌:iOS 设备底部内容被安全区域遮挡或留白过多。
  • 解决 ‌:在 manifest.json 中配置 app-plussafearea 参数,设置 offset: "none" 禁用底部安全区域偏移‌。

2. ‌Button 组件伪元素边框残留

  • 问题 ‌:Button 组件在部分平台显示默认黑色边框,即使设置 border: none 无效。

  • 解决‌:通过 CSS 覆盖伪元素样式:

    css 复制代码
    cssCopy Code
    button::after { border: none; display: none; }  

    需注意全局样式污染风险‌。


3. ‌H5 端上传文件格式异常

  • 问题 ‌:uni.uploadFile 在 H5 端上传图片时,后端无法识别文件类型(如后缀名丢失)。
  • 解决 ‌:手动为 FormData 添加 nametype 字段,或使用 uni.chooseImage 返回的 tempFiles 中的 File 对象‌。

4. ‌Textarea 组件点击事件冒泡干扰

  • 问题‌:iOS 设备中点击 Textarea 会意外触发父级元素事件(如页面滚动)。
  • 解决 ‌:在 Textarea 外层添加 @touchstart.stop 阻止事件冒泡,或使用 catchtouchstart 事件‌。

5. ‌APP 自动登录状态同步问题

  • 问题‌:用户登录信息存储后,多页面间状态同步延迟或失效。
  • 解决 ‌:结合 Vuex 全局状态管理 + uni.setStorageSync 持久化存储,并在 app.vueonLaunch 中初始化状态‌。

6. ‌导航栏与胶囊按钮高度适配

  • 问题‌:自定义导航栏在 Android/iOS 中与胶囊按钮间距不一致。

  • 解决 ‌:通过 uni.getSystemInfoSync() 动态计算导航栏高度:

    • iOS:状态栏高度 + 44px
    • Android:状态栏高度 + 48px‌5。

7. ‌页面跳转参数类型隐式转换

  • 问题 ‌:uni.navigateTo 传递的布尔值参数会被强制转为字符串类型。
  • 解决 ‌:在目标页面使用 JSON.parse() 或显式类型转换(如 option.flag === 'true')‌。

8. ‌APP 批量上传图片字段冲突

  • 问题 ‌:真机调试时 uni.uploadFile 批量上传多图,后台仅接收最后一张图片。
  • 解决 ‌:手动为每个文件对象添加唯一 name 字段,避免后端接收时覆盖同名文件‌。
相关推荐
walking9571 分钟前
前端进阶必看!藏在浏览器与代码里的技巧
前端
又写一个小bug18 分钟前
如何让你的Vue项目支持局域网访问 - 完整指南
前端
我现在不喜欢coding18 分钟前
为什么runloop中先处理 blocks source0 再处理timer source1?
ios·面试
walking95723 分钟前
前端开发中常用的JavaScript方法
前端·面试
大舔牛26 分钟前
图片优化全景策略
前端·面试
卸任37 分钟前
阿里云域名迁移到Cloudflare DNS管理
前端·dns
谢小飞1 小时前
Echarts高级柱状图开发:渐变与3D效果实现
前端·echarts
FogLetter1 小时前
Vite vs Webpack:前端构建工具的双雄对决
前端·面试·vite
tianchang1 小时前
JS 排序神器 sort 的正确打开方式
前端·javascript·算法