From 45094bdf41fb13a5d24bd3e8eb3fdfec6241c59f Mon Sep 17 00:00:00 2001 From: CaIon Date: Wed, 7 Oct 2026 23:39:10 +0800 Subject: [PATCH] =?UTF-8?q?fix(web):=20=E4=BF=AE=E5=A4=8D=20OriginOS=206?= =?UTF-8?q?=20=E8=AE=BE=E5=A4=87=E6=B8=A0=E9=81=93=E9=A1=B5=E7=99=BD?= =?UTF-8?q?=E5=B1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 用户环境:vivo X300 Ultra,OriginOS 6(Android 16),Chrome 和 Via 浏览器均出现渠道页白屏,控制台无错误。 保留页面模糊过渡,将入场终点由 blur(0px) 改为 blur(0.01px), 动画结束后设置 filter: none,避免零半径 blur 在受影响设备上 触发白屏。补充页面入场和路由切换的回归测试。 验证:受影响测试 2 项通过,typecheck、相关文件 lint 和格式检查 通过;测试实例已由用户在故障设备上复测,确认页面正常。 --- web/src/lib/motion.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/web/src/lib/motion.ts b/web/src/lib/motion.ts index a5f5ae0c2..83ed0f3a7 100644 --- a/web/src/lib/motion.ts +++ b/web/src/lib/motion.ts @@ -38,7 +38,14 @@ export const MOTION_TRANSITION: Record = { export const MOTION_VARIANTS = { pageEnter: { initial: { opacity: 0, y: 8, filter: 'blur(4px)' }, - animate: { opacity: 1, y: 0, filter: 'blur(0px)' }, + animate: { + opacity: 1, + y: 0, + // Exact zero blur can blank the page on some Android renderers. + // Preserve the blur animation, then release the filter after it finishes. + filter: 'blur(0.01px)', + transitionEnd: { filter: 'none' }, + }, exit: { opacity: 0, y: -4, filter: 'blur(2px)' }, }, fadeIn: {