jif2.zhang
|
d1f36b3b8f
|
修复扫码弹窗一闪而过
Docker Build and Push / build-image (push) Successful in 4m5s
现象: 米家授权过期后, 扫码弹窗从底部弹出但瞬间消失, 看不到二维码.
三处缺陷:
1. 服务端 startQrLogin() 在已有流程运行时提前 return, 未清 done.
上一轮成功残留的 done=true 会让前端第一次轮询就拿到
{running:false, done:true}, 误判为扫码成功立即关窗.
改为复用流程时显式返回 done:false.
2. 前端 AuthPopup 的成功/失败判定没有幂等保护, 且 onClose/onOk 是
父组件每次渲染新建的函数. 父级轮询触发重渲染后, 回调身份变化
会波及弹窗关闭路径. 改用 ref 持有最新回调 + settledRef 保证
一轮流程只结算一次.
3. 弹窗遮罩绑定 onMaskClick=cancel, 手机端极易误触; 关闭遮罩点击,
只允许显式点「取消」关闭.
注意: 前端需重新构建发布, 服务端需重启后生效.
|
2026-10-24 06:30:00 +08:00 |
|
jif2.zhang
|
95b9985e8b
|
修复米家会话失效后不弹登录二维码
Docker Build and Push / build-image (push) Successful in 5m46s
根因一: 过期检测形同虚设
- @zythum02/mijia-api 的 refreshToken() 在本地凭证字段齐全时直接返回成功,
根本不发请求, 因此 checkAuth() 永远判定 ok, 过期后既不出横幅也不出扫码入口
- checkAuth() 改为真打一次 getHomesList() 验证 token; 成功缓存 5 分钟,
失败只缓存 30 秒(便于网络恢复后自愈); 增加并发探测合并; 状态未变不写库
- getStatus() 以实时探测结果为准, DB 里的 status 仅在探测为 unknown 时兜底,
避免残留的 ok 遮蔽已失效状态
根因二: 二维码图片 401 导致弹窗空白
- /api/mihome/reauthorize/qr-image 在 authRequired 之后, 而 <img src> 无法携带
Authorization 头, 图片请求被拒, 用户看到的是空白/裂图
- 新增 fetchMihomeQrImage(): 带 JWT fetch 后转 blob URL 给 <img>, 并在卸载/换码时释放
其他修复
- EnvView 的 load 依赖 [status] 且成功回调又 setStatus, 造成 /status 无限重复请求;
改为空依赖 + 函数式 setStatus; 首屏与重试走 ?force=1 强查
- 会话失效(非网络类错误)时自动弹出扫码窗, 每次挂载仅弹一次
- 扫码状态机新增 done 标记, 只有真正登录成功才算成功, 避免取消后误判
- 二维码 120s 超时自动续码(最多 2 次), 慢扫不再直接失败
- 取消后不再丢弃可能已成功的扫码结果
- scripts/mihome-login.mjs 适配 done 语义
- 同步更新设计文档 §5.2 / §5.4 / §6
注意: 前端需重新构建发布后生效。
|
2026-10-23 22:21:08 +08:00 |
|
jif2.zhang
|
7b4e59957b
|
修复容器内 news/oil 定时失效: 运行时镜像携带 scripts/ + axios 转生产依赖 + cron 脚本模块惰性加载降级
Docker Build and Push / build-image (push) Failing after 9m34s
|
2026-09-21 14:09:18 +08:00 |
|
jif2.zhang
|
1d69915cf3
|
米家调度独立模块注册, 避免被容器中无法加载的旧 cron.js 连带失效
Docker Build and Push / build-image (push) Successful in 4m36s
|
2026-09-21 11:52:24 +08:00 |
|
jif2.zhang
|
8e2c6ffa35
|
新增米家环境监控模块 (采集/聚合/历史/前端 EnvView) + CI 挂载米家凭证目录并自动应用迁移
Docker Build and Push / build-image (push) Successful in 6m54s
|
2026-09-21 11:42:58 +08:00 |
|
cheney
|
22a36fb213
|
fix 打开 ota 授权
Docker Build and Push / build-image (push) Successful in 2m51s
|
2026-08-07 16:24:10 +08:00 |
|
cheney
|
a5bc8ef1f1
|
功能完成
Docker Build and Push / build-image (push) Successful in 2m53s
|
2026-08-07 14:56:27 +08:00 |
|
cheney
|
b9ec6fbe0b
|
油价集成
|
2026-08-07 14:36:57 +08:00 |
|
cheney
|
dbe04b7da3
|
ota
|
2026-08-07 09:49:26 +08:00 |
|
cheney
|
eddddc56ae
|
完成基础功能
Docker Build and Push / build-image (push) Successful in 3m1s
|
2026-08-06 16:55:03 +08:00 |
|
cheney
|
4d02439ecb
|
更新首页
|
2026-08-06 16:41:47 +08:00 |
|
cheney
|
547181d333
|
更新首页
|
2026-08-06 15:39:59 +08:00 |
|
cheney
|
ec15f40323
|
数据源修改
|
2026-08-06 15:24:55 +08:00 |
|
cheney
|
08b3655a38
|
修改架构,移动端优先。
save
|
2026-08-03 18:05:50 +08:00 |
|