9013a84dea
fix(首页): 删除妈妈的树洞 / 预览页不再自动跳上次应用 / 「我的」加盲盒卡册常驻入口 (v26100103)
...
- 妈妈的树洞整块删除(HTML/CSS/JS),需要恢复看 git 历史
- 预览页 /mama-box-preview/ 跳过冷启动恢复上次应用,避免一打开链接就跳到孕检日历
- 「我的」设置与服务里加「我的孕期卡册 N/37」,与首页横幅同一入口;未建档/未到孕周时隐藏
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-01 02:21:09 +00:00
70c9786f15
feat(首页): 此刻卡换应用 logo / 树洞星夜版 / 孕期小知识带孕周并压缩 (v26100102)
...
- 此刻:今日三项与动态的图标换成对应应用的 logo(取 App 表 logo,后台换即生效);
消消乐、盲盒用本站同风格 logo(assets/img/429ffcba0d6e.svg、b0087c3c012a.svg)
- 妈妈的树洞重做为星夜版:深夜天幕 + 剪影树 + 旋转发光的漩涡树洞;每条心事化成天上一颗星(位置按时间戳固定);
扔进去时字逐个被吸进漩涡、洞口爆亮、新星射上天空;整块比旧版更矮。心事仍只存本机,热线兜底不变
- 孕期小知识:标题改「孕 N 周 · 今日孕期小知识」,右侧「本周第 N 天」;今日卡与圆点收紧,四张小卡改一行横滑(点开看全文)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-01 02:10:13 +00:00
c414a7ff8f
feat(首页): 孕期盲盒横幅 + 盲盒页(开盒动画/翻卡/卡册/概率公示)+「此刻,孕妈们在做什么」卡 (v26100101)
...
- 横幅:顶部大图下方,按 /blindbox 状态切换文案(可开 / 补开 / 下周倒计时 / 填预产期引导),礼盒晃动 + 扫光
- 盲盒页:开盒舞台(光芒旋转、礼盒悬浮,开启时越晃越烈→盖子飞起→白光+彩纸→3D 翻卡),闪卡镭射光;
卡册按孕早/中/晚期分组,补发标「补」,错过的周可补开;规则与概率说明由接口下发
- 此刻卡:大数字进入视口时数上去、每分钟平滑刷新;今日三项可点进工具;匿名动态每 3 秒上翻
- 新增 14 张周卡插画(其余孕周先用本周水果占位)
- AGENTS.md §4.12 登记模拟数据例外(决策人/日期/期限 2026-12-31)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-01 01:44:44 +00:00
555befc08b
style(首页工具卡): 水印图标整体缩小约 20% (v26093023)
...
透明度、角度、右下角出血的摆法不变,只按比例缩小尺寸和出血量。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 17:09:35 +00:00
53b208e3a5
style(首页工具卡): 图标改成白色半透明水印,降低视觉干扰 (v26093022)
...
用户反馈五个彩色图标抢眼、满屏都是图标。图标只作装饰,统一改为:
- 白色单色 SVG(彩色细节改用镂空),28% 透明度;
- 放大并转 -12°,斜压在卡片右下角、出血到卡边外,退成卡面底纹;
- 孕期体重卡的秤也改为右下角水印,标题和数字居中;文字层统一压在水印之上。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 17:06:48 +00:00
a7e71fda2d
feat(首页): 删掉孕期每日小打卡;工具卡图标只留 LOGO 里的图形并改矢量 (v26093021)
...
- 删除首页「孕期每日小打卡」模块:HTML、.daily-check/.dc-* 样式、renderDaily 及产后收起逻辑、
三张专用图标。工具区重新成为首页第一块(首块间距规则本就按 :first-child 走)。
- 五张工具卡图标去掉 LOGO 外面的圆角方块 / 圆环底,只留里面的图形,全部改成 SVG:
数胎动小脚丫、胎儿估重表盘、数宫缩波形直接取自工具页原 SVG;
孕期体重(原图 128px webp)、孕检日历(原图 100px png)原图太小放大发糊,照原图配色重画为矢量。
- 图标位置微调,避开「记录」按钮和标题。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 17:00:21 +00:00
d164688743
feat(首页工具卡): 图标换成各工具页左上角的 LOGO (v26093020)
...
- 五张卡的扁平图标换成点进去那个工具页左上角的 LOGO 原图(透明 PNG):
数胎动 .brand-logo、孕期体重 img.brand-logo、孕检日历 .hero-brand i、胎儿估重 .lg、数宫缩 svg.brand-logo。
- 孕检日历原图四角有锯齿缺口,补成连续圆角。
- LOGO 不再出血到卡边外,统一离右下角约 10px、挂同一档投影;尺寸按卡片空间重新摆放,
避开「记录」按钮和标题。卡片底色、版式、跳转、数据回填不变。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 16:50:21 +00:00
37bdfa6f24
feat(首页工具卡): 图标改扁平化,卡底色跟随各工具页色系 (v26093019)
...
- 五个图标(小脚丫 / 体重秤 / 台历 / 秤盘小豆宝宝 / 秒表)重画为扁平 SVG:白色 + 同色系实色块,
去掉渐变、阴影、高光和 3D 大眼睛;去掉插画的 drop-shadow。
- 卡底色改成点进去的工具页同色系、稍深一档:数胎动陶土橙、孕期体重珊瑚粉、孕检日历草绿、
胎儿估重雾蓝、数宫缩薰衣草紫(取自各页 theme-color / 主色,见 CSS 注释)。
- 「记录」按钮字色跟数胎动卡改成陶土橙。版式、跳转、数据回填不变。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 16:33:42 +00:00
4a7eb92864
feat(首页工具卡): 五张卡按参考图改版——糖果色底 + 白字 + 3D 大眼萌物插画 (v26093018)
...
- 数胎动 / 孕期体重 / 孕检日历 / 胎儿估重 / 数宫缩:饱和渐变底(蓝 / 粉 / 绿 / 紫 / 蓝紫)+ 白色粗标题,
插画换成自画 SVG 萌物(小脚丫 / 体重秤 / 台历 / 秤盘小豆宝宝 / 秒表),立体光泽、黑色大眼珠带高光。
- 只换皮:高度账、排布、data-mini 跳转、各 id 数据回填不变;「更多工具」出口保持灰米。
- 「记录」按钮改白底蓝字并压在插画上;告警态在彩色底上改亮黄字(原 --alert 红看不清)。
- 数宫缩卡原曲线插画 72f41378ef8e.png 已无引用,删除;其余旧 PNG 仍被「每日小打卡」使用,保留。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 16:23:36 +00:00
18eecdb3a2
docs(css): 头图注释里的背景文件名同步到 v7
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 16:18:29 +00:00
c73a1419ec
feat(首页头图): 孕25周换母婴作图 v7 GIF——改回侧身闭眼睡、正脸可见 (v26093017)
...
- 用户否了 v6 的背对造型,素材换 v7:回到 v5 姿势(侧身、闭眼睡、小手在嘴边),画风稍卡通、脐带更清晰。
- 构图和囊位置同 v6,接入方式和摆位数全部沿用(静帧 .88 铺底 + GIF 截 450×450 整高块叠加)。
v7 宝宝动作实测离截块中心最远 ≈168px < 遮罩实心半径 180px;首帧和背景对齐误差 ≈3.5(GIF 抖动噪点级)。
- 底色兜底 #dc8569(=新图左缘色)。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 16:16:10 +00:00
8c25d5fc74
feat(首页头图): 孕25周换母婴作图 v6 GIF——宝宝背对镜头、脐带更明显 (v26093016)
...
- 素材换母婴作图 v6(替代 v5 的 mp4):卡通动漫风宝宝背对镜头不露脸,脐带从囊壁右上方垂下、全程不动;
画幅从 1280×736 变 16:9。
- 背景 = v6 静帧缩 .88、截取块中心 (656,360) 摆到 (1240,375),囊完整不裁;
<video> 换成 <img>:原 GIF 截 450×450 整高块(含宝宝全部动作),object-fit:cover 铺满 .hero-baby,
首帧和背景对齐误差 ≈3.7(GIF 抖动噪点级)。加载完淡入,没加载出来停在静帧。
- 宝宝不露脸了,嘴边的小气泡连同样式一起去掉;底色兜底 #df856a。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 16:02:41 +00:00
488989d82c
feat(首页头图): 孕25周换母婴作图 v5——不规则羊水囊、去胎盘、囊壁细脐带 (v26093015)
...
- 素材换母婴作图 v5(替代 v4):羊水囊改不规则有机形状,去掉囊顶胎盘,
脐带从囊壁右上方细细淡淡垂向宝宝身前、全程不动;宝宝吸手指时头部 ±15px 低头抬头。
- v5 的囊比 v4 的圆宽,背景缩放 .93→.90、囊心摆到 (1240,375),囊右缘不再被切;
叠加视频以囊心 (661,381) 截 660×660→400×400,54KB;.hero-baby 摆位按新几何重算,
首帧和背景对齐误差 ≈2.4(压缩噪点级)。嘴边气泡起点跟着挪到新嘴位。底色兜底 #de8868。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 13:47:20 +00:00
05ce51300e
feat(首页): 新增「宝宝消消乐」游戏推广入口 (v26093014)
...
- 工具托盘正下方一张糖果色大卡:「新游戏」角标 + 名字 + 玩法一句话 + 跳动的「开始玩」,
右侧 3×3 待产用品小棋盘循环演示三连消除,角上星星闪烁。
- 点击走 jumpApp() 跳 https://beian3.douba.top/myxx/index.html(游戏由「母婴消消」维护 ,
不需要身份参数,多带无害);GAME_URL 为空时整块隐藏。
- 动效在 prefers-reduced-motion 下关闭;页面隐藏时棋盘动画暂停。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 13:29:07 +00:00
9a1ad1fb93
feat(首页): 新增「孕期小知识」和「妈妈的树洞」两个模块 (v26093013)
...
孕期小知识(工具区下方):
- 按真实孕周 + 天数显示「今日小知识」大卡,右上角本周水果 emoji 缓慢浮动;
底部 7 个圆点 = 本周第 1–7 天,今天高亮呼吸、以前可回看、以后锁着(明天见)。
- 四张马卡龙小卡:宝宝这周(带大小比喻)/ 妈妈身体 / 吃点什么 / 这周留心,进入视口依次浮上来。
- 内容 assets/data/preg-tips.json:孕 4–40 周,每周 4 句 + 每天 1 条,共 259 条,按需 fetch。
- 只在 /pregnancy 确认真实孕周后显示(pregEmpty === false 且非产后),不拿默认孕周配内容。
妈妈的树洞(今日脚印下方):
- 心事只存本机 localStorage(mmbox.treehole.v1,最多 200 条),不上传;按用户选定不做回应,
只有纸团飞进树洞 + 树冠晃动 + 「已收好」动画;可展开「我的心事」回看、删除。
- 出现明显轻生字眼时,在「已收好」下加一行 12356 心理援助热线(兜底);卡底常驻一行求助提示。
动效在 prefers-reduced-motion 下关闭。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 13:23:00 +00:00
9ea9f3c50f
feat(首页): 新增「孕期每日小打卡」——按钮带状态小标签 (v26093012)
...
- 首页正文最上面加一块「孕期每日小打卡」:数胎动 / 称体重 / 产检三行,
每行右侧一枚状态标签,点整行进对应应用(复用 data-mini + MINI_APP_MAP + jumpApp)。
- 标签来自工具卡同一个接口(applyRemoteCards → renderDaily),不另打请求:
今日已记 N 次 / 今天还没记;今日已称 / 今天还没称(按接口 day 判今天);
距 NT 还有 7 天 / 今天糖耐检查 / 待补记 / 看产检安排。
抬头右端「今日已完成 x/2」(只数胎动、体重两件每日事)。
- 接口没回、访客态保留中性提示,不写数字;产后态整块收起。
- 首块间距规则改为 .home-body>:first-child,工具托盘并入块间 16px。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 13:10:04 +00:00
62b23af323
feat(首页头图): 孕25周换 v4 用户确认版——胎盘在囊顶、胎发、颜色回调 (v26093011)
...
- 素材换母婴作图 v4(用户已在作图会话确认画面):颜色比 v3 深一档(囊外 #DB8263~#E38E6E),
胎盘移到囊顶、脐带从上方细细垂下、接肚子端被腿挡住;头部重画带细软胎发;浮动 ≤7px。
- 背景、囊视频按同一流程重做(囊心 667,368),视频 66KB;底色兜底改 #de8968。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 13:04:51 +00:00
bca92312f8
feat(首页头图): 孕25周宝宝换 Q 版卡通、整体提亮 (v26093010)
...
- 素材换母婴作图 v3:Q 版卡通宝宝(圆脸、闭眼笑、粉嫩,无写实纹理),浅暖桃底;
脐带/胎盘固定、无孕肚、镜头固定、正倒放首尾同帧等 v2 要求保留,整体晃动已防抖。
- 背景、囊视频按同一流程重做(囊心 664,368),视频 74KB。
- 背景变浅,左侧压字暖色层 .14→.20,底色兜底改 #eaa485。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 10:33:19 +00:00
983191a752
feat(首页头图): 换母婴作图 v2 孕25周视频——脐带连囊壁胎盘、镜头固定、暖底 (v26093009)
...
- 素材 yun25w-loop.mp4 v2:胎盘在囊内壁左下,脐带全程固定,接肚子那头被腿挡住;
无孕肚;镜头固定;本身正放+倒放首尾同帧,直接 loop。
- 背景 = 视频第 1 帧缩 .93、囊心摆 (1250,375),左/上/下按边缘色补齐并宽羽化(455d2517fafd.jpg)。
- 视频只截羊水囊 660×660 → 400×400(f20175ae1170.mp4,95KB),宽羽化遮罩叠在背景同位置;
与背景同源同帧,边缘无缝。去掉单独的静态囊图层。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 10:10:45 +00:00
d5ee5c8654
fix(首页头图): 羊水囊边缘和外部背景柔和过渡,去掉割裂感 (v26093008)
...
- 静态囊图边缘改为 r232→300 平滑羽化,底图在囊外加一圈很柔的暖光,把囊壁化进底色。
- 去掉 .hero-sac 的 CSS 椭圆遮罩(横竖半径不同,把囊壁左右削掉、上下留着,是割裂的主因)。
- 视频遮罩放宽为 74%→96%,和静态囊壁柔和叠合,镜头推近时也不出边。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 09:30:17 +00:00
9bb3c5a533
feat(首页头图): 背景改暖桃橙,和羊水同色调顺下来 (v26093007)
...
- 头图底子从暗紫玫瑰改成取自囊内羊水的暖桃橙渐变,光晕和散景光点同步改暖、调淡;
左侧天数卡那块也是同一色调。压字渐变改成很淡的暖色(.14)。
- 静态囊图按新底子重新合成(视频不变)。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 09:23:51 +00:00
f21af1e25b
feat(首页头图): 羊水囊不再动,改成囊里的宝宝自己动(吸手指、蹬腿) (v26093006)
...
- 去掉整层浮动和整图「胎动」扭动(用户:球不要动,要里面的宝宝动)。
- 母婴作图的 25w.mp4 取前 10s,只截囊内 600×600,正放 + 倒放拼成 20s 无缝循环,
400×400 / 288KB(assets/video/b6476cfce328.mp4),遮罩只露囊内,叠在静态囊图上。
- 静态囊图换成视频第 1 帧(70812d56ec5f.jpg),视频淡入时画面对得上;放不了就停在静态图。
- 微信 iOS 等 WeixinJSBridgeReady 再 play();页面隐藏时暂停;减少动态效果下不放。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 09:20:13 +00:00
d2c04194fa
feat(首页头图): 宝宝单独成层,加「胎动」——时不时扭一下、蹬一下 (v26093004)
...
- 头图拆两层:散景光点底子 7dfe5be4e828.jpg(背景,不动)+ 羊水囊宝宝 bc6367fcad38.jpg
(从同一张合成图原样切出,按橙区高 H 换算摆回原位,径向遮罩羽化边缘)。
- 外壳慢浮 6s;图片「胎动」7.3s 一轮:大半时间静止,突然小幅转动 + 位移,随后再轻蹬一下。
两个周期错开,不像固定节拍。嘴边气泡挂在同一层,跟着宝宝一起动。
- prefers-reduced-motion 下全部停住。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 09:14:27 +00:00
a0119760ed
feat(首页头图): 去掉孕肚、宝宝缩小、左侧提亮,四周改散景光点 (v26093003)
...
- 孕肚弧线太写实(用户反馈有巨物感),只从原图抠出羊水囊 + 宝宝,缩到约 8 成放在右侧。
- 底子按原图色调重铺紫玫瑰渐变,比上一版亮;囊后一圈柔和暖光晕保留包裹感,周围散景光点。
- 左侧压字渐变从 .5 降到 .22,明显变浅。
- 嘴边气泡锚点按新图重新定位(右 0.408H、顶 0.491H)。
- 新图 assets/img/ab3c7e20811a.jpg(1560×750,59KB),替换上一版预览图 4cd9891cec31.jpg。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 08:01:18 +00:00
44e20cb0c3
feat(首页头图): 孕25周整图铺成头图背景,左侧顺原图色调延伸 (v26093002)
...
- 橙色渐变底 + 右上角圆形宝宝图 → 整张孕25周图(孕肚弧线 + 羊水囊宝宝)作 .home-hero 背景,
右对齐、高度=头图高;左侧按原图左缘色调横向补出暗粉紫,屏宽 ≤520 都铺得满。
叠一层左深右透渐变压住孕肚亮边,保证左侧白字可读。头图高度 250 与底部椭圆弧不变。
- 去掉右上角圆形图(上一版预览的 dd05df88ab23.png)和三团橙色光斑;
嘴边气泡改挂在零尺寸锚点上,按背景图里嘴的位置定位,不再整体浮动。
- 新图 assets/img/4cd9891cec31.jpg(1560×750,84KB)。旧正式图 b00c707f7b1f.png 保留。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 07:45:05 +00:00
31163448da
style(今日脚印): 引导占位改用 AI 气泡那套语言(白气泡 + 竖线圆点),不再横跨整块 (v26092218)
...
用户反馈:原来那张横跨整块的白卡「放在这有点突兀」,要求按 AI 气泡的样式、用白色背景实现。
- 标记改为与 .ai-bubble **同构**:空 .ab-badge 占位(宽度 = --tl-time)+ .ab-dot + .ab-body >
.tl-guide-bubble。于是圆点落在**同一条竖线**上,与时间轴/落款行对齐。
- 样式:白底 + 1px --line 描边 + 4px/16px 圆角 + 指向竖线的尖角。
⚠️ 白底必须带描边:AI 气泡靠暖渐变区分,白气泡压白底只剩阴影会糊成一片。
⚠️ 尖角用「旋转 45° 的小方块 + 同色描边」(纯 border 三角做不出描边)。
⚠️ 文案层级:lead(上游引导语)走 15px/600 主文案,下面那行提示走 12.5px 次要色,芯片左对齐。
- 行为不变(文案仍来自接口 lead,芯片仍来自 unused[] 且可点)。
本地验证:guide 模式渲染为竖线上的白气泡(版式已截图确认)、rows 模式不受影响、无 JS 异常。
2026-09-23 01:02:51 +08:00
77fb75796d
feat(今日脚印): AI 气泡改说真话 —— 文案取接口 digest,引导取 lead+unused (v26092217)
...
配合 box_app 的 B 方案(今日脚印换源到数胎动用户面 /user/daily/footprint)。
接口现在一次给全:事件 + digest(气泡文案)+ lead/unused(引导),于是首页不用再编数据。
- **AI 气泡**:文案由 fpRender() 从 `digest.text` 写入(真实文案,宝宝口气的 AI 句子),
`digest.warn` 为真时整句标红(.ai-warn)。取不到 digest 就整颗气泡收起。
⚠️ index.html 里那句写死的「妈妈,今天你数到我动了 3 次…」已删除 —— 它对任何用户都显示,
而且把 today 的假次数和真实时间轴摆在同一屏。现在这条规则是 **data-driven**(有文案才显示),
不再靠"有没有事件"猜。
- **引导占位**:文案用接口的 `lead`(如「宝妈,先从这几件事记起吧。」),应用用 `unused[]` ——
能对上 App 表的渲染成**可点芯片**(点击 jumpApp 进该应用),对不上(如不在 App 表的宝宝来信)只显示名字。
- **三种显隐模式**(fpRender 是模块显隐的唯一 owner):
rows 拿到事件 → 时间轴;guide 一条都没有(上游查无此人 / kind=fallback 今天没活动 /
只浏览没产出记录)→ 引导;hide 接口读不到 / degraded → 整块不显示。
原来「有档案但今天没记」的「还没有足迹」空态并入 guide(上游的 lead + 推荐应用比一句空态有用)。
- 删掉不再使用的 emptyFootprintStep()。
本地验证(桩后端,五种返回 × 资料延迟):rows → 时间轴 + 气泡显示**真实 digest 文案**;
guide → 上游 lead + 芯片(数胎动/胎儿估重可点、宝宝来信纯文本);linked=false → 引导兜底标题;
degraded / 接口 500 → 整块不显示。全程无 JS 异常。
2026-09-23 00:19:00 +08:00
dedce247e9
fix(今日脚印): 读不到不编数据 —— 四种显隐模式收口到 fpRender(唯一 owner)(v26092214)
...
产品口径(2026-09-22):
· **无档案**(上游查无此人 / 本地未关联)→ 显示引导占位(#tlGuide:「还没有你的脚印 /
去「数胎动」记一笔,这里就会长出你今天的脚印」)
· **有档案** → 必须从接口读;**读不到就不显示**(整块 .today-line 收起),不再回退演示行
改动:
- index.html:删掉 4 条**写死的演示行**(胎动 12 次 / 体重 58.2kg / 产检提醒 / 睡前散步 20 分钟)——
它们只在「接口读不到」时露出来,等于上游一抖页面就开始编数据。换成一行中性「正在获取今天的脚印…」
+新增 #tlGuide 引导块,并在注释里写明四种模式与判定。
- 新增 fpApply()/fpRender():模块显隐**只有一个 owner**(pending / rows / empty / guide / hide,
外加「未建档 / 产后」硬门槛优先于接口结论)。
⚠️ 之前 syncPregnancy 也直接改 .today-line 的 display,两个 owner 撞出竞态 —— 实测「有档案 +
上游故障(degraded)」会被 profile 回来后重新显示出来(该收起的没收起)。现在 syncPregnancy 两处
都只调 fpRender()。
- 没有真实事件时给 .today-line 挂 .no-ai,AI 气泡一并收起:那句「今天你数到我动了 3 次」是写死的
演示文案,今天没记 / 未关联 / 读不到时显示它就是在说假话。拿到真实事件时才显示气泡
(把那个数字接到真实次数属另一件事,等产品定文案)。
本地验证(桩后端,五种模式各跑一遍,并把 profile 延迟 1.5s 以复现前面那个竞态):
rows → 模块显示 + 真实事件 + 气泡显示;empty → 「还没有足迹」+ 无气泡;
guide → 引导块显示 + 时间轴收起 + 无气泡;degraded → **整块不显示**;
fail(接口 500) → **整块不显示**;未建档 → 整块不显示。全程无 JS 异常。
2026-09-22 23:48:44 +08:00
d1fff2c248
feat(首页卡): 5 张工具卡改读 box_app 封装的真实数据(接口优先、失败回退本地)(v26092213)
...
数据源:GET /api/mp/public/mama-box/tool-cards(box_app 封装数胎动平台的 app-cards,
H5 不直连上游、不持有 token)。此前这 5 张卡各自为政:数胎动读本地 records(mama-box 早就不自记
胎动,常年 0)、体重恒 `--`、孕检日历本地按预产期推算、数宫缩显本地孕周、胎儿估重静态文案。
- 新增 applyRemoteCards() / applyRemoteCardsFetch():按 `slot` 落 DOM
(kick→#kickTodayHome、fweight/curve→.mc-sub、weight→#weightVal、cal→#calNext);
上游字符串一律 textContent,**绝不用 innerHTML**(同 footprint 的写法)。
- 优先级 = **接口优先、失败回退本地**。两个来源并行返回、先后不定,所以用 cardsOwned 旗子定序,
而不是赌顺序:#kickTodayHome 让位给卡片接口;#calNext 让位(卡片接口与孕检日历应用同一套排期,
还支持"改过预约日以预约日为准");curve 卡写值后**摘掉 data-wk**,否则 syncStaticDates 的
[data-wk] 循环会把它覆盖回孕周。
- 卡片点击与名称仍以 App 表为准(MINI_APP_MAP + APP_BY_ID,AGENTS §4.4);接口的 appId/path 仅诊断
(上游 app_id 是 URL slug,与 identifier 刻意不同)。
- 版式:固定高度 bento 只留一个状态位 → `.bento .mc-sub` 单行省略;数宫缩那列文本宽仅 ≈73px,
有数据时改显紧凑 value(「4分12秒」,否则上游 text「最近间隔 4分12秒」会被省略掉数字);
孕检日历放宽到两行(过期未记时上游给「待补记 9月26日」,一行会把日期省掉)。
- 新增 `.mc-extra`:只有 kick / weight 两张有富余竖空间,用来放上游 sub
(「2 段 · 最近 13:00」/「较孕前 +11.7 kg · 9月22日」);fweight/cal/curve 是固定高度、放不下第二行,
注释写明要加得先重排 .bento 那笔高度账(158+10+64=232)。
- warn → `.is-warn` 标红(新增 --alert token):胎动偏低 / 宫缩达临产阈值 / 产检过期未记。
- 体重卡:有值时写 value + 小字 unit(不会出现「-- kg」),无值保持中性 `--`。
本地验证(无头浏览器 + 桩后端):接口成功 → kick=12(覆盖本地 records 的 3)、weight=58.7kg +
「较孕前…」、cal=9月26日、curve=4分12秒、kick 标红、无 JS 异常;接口 ok=false → 全部回退本地
(kick=3 / weight=-- / curve 恢复 data-wk),页面不变空。
2026-09-22 23:01:51 +08:00
ab8a3a5ea0
fix(占位/来信): 工具卡演示占位归中性 + 档案屏空态 + 修来信「红点有、卡没有」(v26092210)
...
一、占位数据(新用户实测)
- 首页工具卡:孕期体重「58.2kg」是写死的演示值(后端也确无体重数据源,
GET /records 只给当日聚合)→ 改中性占位 '--';数胎动「今天 3 次」默认
3 在访客态/records 失败时没人覆盖 → HTML 默认 '--'、state.kickToday 改 0。
- 孕检日历 #calNext:init 先按内置默认(预产期=今天+3月 → 孕27周)写下
演示日期,而 pregEmpty 分支只清 [data-ga]/[data-wk] 两种钩子、**漏了它**
(它没有这两种属性),applyRemoteProfile 又提前 return → 假日期留在首页。
两条空态分支各补一行显式归 '--'。
- 档案屏「成长数据」:三张统计卡 + 体重曲线 + 双顶径/股骨长/腹围等测量值
全部无接口数据源,空态(未建档/产后)整块隐藏改显示引导;#favCount 从
写死的 18 改为按 DOM 里点亮的星标实时统计(18 与屏幕上的 6 张对不上)。
⚠️ 该屏真机到不了(go('archive') 无条件跳 chanjian-rili),属防御性改动。
- **明确不动**的两处真实数据,都已加注释防止再被当演示值删掉:
· 指南区「128 份孕育资料」= 后端准备总数(按孕周陆续发放,目前上架 8 份,
其余可扫码找小助手索要)——「数字与列表条数不符」是对的;
· 三张卡「12.8 / 20.4 / 9.6 万妈妈已领取」= 真实领取量(手工同步的静态文案)。
二、宝宝来信「tab 红点有、首页提醒卡没有」
根因:syncPregnancy 的未建档分支里那句 hideLetterCard() 只藏卡、**不动 #tabBadge**,
而它旁边的理由(「applyLaixinReminder 里也判 pregEmpty」)是错的 —— 后者明确
故意不看 pregEmpty(来信与建档是两件事,历史上加过一版就是这个症状)。
于是 laixin 先回来(亮红点 + 显示卡)、/profile 后回来(走该分支)时,卡被藏回去、
红点留下。定时复现:profile 延迟 1.5s 必现(卡内文案已写好却带 .hide,即「先显示后被藏」);
同时返回则正常。删掉那句后 0/1.5/3s 三档都一致;未读 0 与访客态仍两者都收。
2026-09-22 21:12:19 +08:00
307f6182e4
feat(记一下/顾问码): 隐藏未实现的「今天已使用」快捷区 + 顾问二维码换真图 (v26092207)
...
记一下弹层:
- 日期/「今天已记 N 条」那行 + 「今天已使用」快捷区(数胎动/孕期体重/胎心记录)
功能尚未实现、数据是写死的演示值,按要求先整体隐藏。
- 只挂 .tbd-hide,**不删 DOM**:js 里 $('#quickKick') 没有判空,且
#kickCount / #todayCount / #noteWhen 会被回填,删掉会直接抛错。
- dedupeApps 在快捷区隐藏时跳过:否则首个可见小标题会变成没有指代对象的
「其他孕期工具」;renderAppGrid 补写 data-toast,避免点「共 N 个」时退回
index.html 里写死的「共 16 个」。
企业微信顾问二维码:
- 占位 svg(is-stub)换成真图 assets/img/4834fe8d686a.png。
文件名 = 文件内容 md5 前 12 位,与该目录另外 34 张图一致(内容寻址,换码即换 URL)。
- .wx-qr 挂在元素本身、svg/img 通吃,CSS 未改;14px 圆角只裁到四角白色静默区,
切不到码点。
2026-09-22 20:25:58 +08:00
932e42e050
fix(身份): 宿主未注入 openid 时给出可见提示 + jumpApp 带 __no_identity 标记 (v26092008)
...
背景(2026-09-20 线上排查):小程序首页壳拿不到 openid 时会**匿名加载**本页,
页面照常渲染但全是占位(孕周 `--`、档案查不到),而跳应用时 jumpApp 因为没有身份
就跳**裸 URL** —— 从商城返回首页加载本页时很容易被误判成「数据丢了」。
根因在小程序侧(App.vue 丢掉无 token 分支的 openid;首页壳没有像 web_view 那样的
silenceAuthNoLogin 兜底),H5 这侧先做**可见 + 可观测**两件缓解:
· 新增顶部提示条(#idNotice):仅在没有 openid 时显示,文案「未获取到微信身份,
页面数据可能不完整」;带「重试」按钮(location.replace 换 URL 重载,重试过一次后
文案升级为「请退出小程序后重新进入」,状态落 sessionStorage,活过那次跳转)。
有身份加载时(applyRemoteProfile 拿到 openid)自动隐藏。
⚠️ 刻意不做自动轮询/自动 reload:宿主只在它自己重设 web-view src 或 onShow 时注入身份,
页面自己刷同一 URL 并不会让身份出现,反而可能循环。
· jumpApp():一个身份都没有时显式带 `__no_identity=1` —— 目标应用能区分「宿主没注入身份」
与「参数被平台丢了」,nginx/后端日志里也能一眼查到(排查 openid 为空的关键指纹)。
验证(本地代理 + 浏览器):访客态提示可见且默认文案正确;有 openid 时隐藏;
点重试后 URL 变 `?t=…`、提示仍在且文案升级;点宫格:无身份 → `…/?__no_identity=1`,
有身份 → `?openid=…&unionid=…`(无标记);卡片/红点/资源库 8 份/弹窗/我的页/tab 顺序
全部回归正常,errors 与 console 为空。
2026-09-20 23:08:26 +08:00
31d153b513
refactor(来信): 彻底删除内置来信屏及全部功能代码,来信整体由第三方 laixin 承接(v26092006)
...
「宝宝来信」功能已全部由第三方应用 laixin(mp.yizhezhe.com/laixin/)承接,
mama-box 只保留两个入口/提醒,二者逻辑一行未改:
· 底 tab「宝宝来信」#tabLetter → openLetterApp() 跳 laixin
· 首页提醒卡 #homeLetter + 底 tab 红点 #tabBadge → syncLaixinReminder()/applyLaixinReminder()
(读 /api/mp/public/laixin/unread)
删除的界面:#screen-letter(来信列表屏)、#detailLetter(来信详情)、
#detailCard(来信分享卡)、#fabWrite(写回信钮)、#modalReply(回信弹窗)。
删除的代码:LETTERS 数据与 stampLetters/renderLetters/filterLetters/buildThread/
renderLetterDetail/openLetter/curLetter/kidText/kidEl、本地延迟投递队列全套
(store/pending、deliverDue、deliverBabyReply、deliverVoiceLetter、语音信)、
syncLetterCounts、信箱头像换图 pickBabyAvatar、回信提交、applyRemoteLetters
(H5 从此不再请求 box_app 的 /mama-box/letters)、滑动 order 里的 letter、
go() 里 #fabWrite 的开关、state.{unread,letterFilter,curLetter,replyCount,babyAvatar}
以及随之无调用方的 fillBaby()。
保留(删前逐个 grep 确认仍有调用方):babyWord()、backAt()(stampAiLogs 在用)、
el()(档案海报在用)、.segmented(档案页在用)、.letter-card(首页提醒卡在用)、
档案页「珍贵时刻」里仅以文案提及来信的装饰卡。
CSS:删掉来信专用规则块与随之失效的变量(--font-round 等);净变化 -2396/+93 行。
2026-09-20 02:47:24 +08:00
aa53d5c6e6
mama-box 9.19 需求: 资料弹窗去兑换码闸门、底tab改回宝宝来信、我的页卡片改兜爸心选商城 (v26092001)
...
资料详情页(需求 1.1/1.2):
- #modalWx 删掉兑换码输入框与「以后再说」「解锁全部资料」两颗按钮,is-gate/is-gift/is-done
三模式合并成单态(唯一出口是右上角 .modal-x);二维码下方文案改需求指定句
- 需求方确认「扫码加顾问 → 回复领资料 → 顾问直接发资料」,故「解锁」概念整体取消
死代码清理(D1 的连带):
- 删 PAN/PAN_DEFAULT 网盘链接表、panOf、WX_CODE/wxCodeOK、givePan、#modalPan 弹窗、
state.wxUnlocked/WXOK_KEY、syncUnlockCopy、fetchRemoteConfig
- 删「已领」整套:state.resGot/RESGOT_KEY/isGot/列表「已领 ✓」标与筛选 chip/详情页「再拿一次链接」
底 tab(需求 2,D2=C):
- 「兜爸心选」→「宝宝来信」,图标换回 ic-letter,点击改走 jumpApp 跳第三方 H5
mp.yizhezhe.com/laixin/(App 表 identifier=laixin,取不到时兜底硬编码)
- 红点 #tabBadge 挪回该 tab;角标数据源改为 box_app 封装的 /laixin/unread
(syncLaixinBadge,ok=false 时保持现状,不把红点抹掉)
其它:
- 我的页卡片「兜爸心选」→「兜爸心选商城」(需求 3)
- 内置来信屏 #screen-letter 与 box_app /letters 链路保留不动,但不再有底 tab 入口
2026-09-20 01:36:06 +08:00
60bc63a870
mama-box 首页与底tab 第九批: 卡2 生长曲线→数宫缩(gongsuopinlv), 档案tab跳孕检日历, 来信tab改兜爸心选商城(购物袋图标+红点移到首页), 隐藏专属福利; 工具链接统一 mp 业务域名 (v26091601)
2026-09-16 16:34:28 +08:00
e2d6489393
版本号移入「关于妈妈盒子」页底部(renderSetting about分支), 删全站固定底标 (v26090811)
2026-09-08 10:58:01 +08:00
e8fba64a91
统一表单输入框最小高度50px(iOS date控件偏矮) (v26090732)
2026-09-08 03:28:57 +08:00
2b87d3cfda
预产期空值时隐藏原生日期提示(due-empty 文字透明), 只显示占位层 (v26090731)
2026-09-08 03:17:47 +08:00
915459f21a
预产期占位改为锚定输入框垂直居中, 修复 iOS webview 下错位 (v26090730)
2026-09-08 03:16:28 +08:00
8f78f5b433
我的资料: 预产期空值占位「- 年 - 月 - 日」(原生date不支持placeholder, 叠加文字层) (v26090729)
2026-09-08 03:11:52 +08:00
4301a8865c
退出登录移到「设置与服务」末尾(退出授权登录, 仅已授权显示), 删用户卡右上角退出图标 (v26090728)
2026-09-08 03:04:12 +08:00
46fbc70da3
来信页空数据双态: 未完善资料→引导去完善(打开资料弹窗), 已完善无信→普通空提示 (v26090725)
2026-09-08 02:36:09 +08:00
672655b022
弹层全部孕期工具宫格限4行x4列, 超出宫格内滚动+细滚动条 (v26090723)
2026-09-08 01:53:19 +08:00
f2eb903eff
纠正: 应用列表渲染到「记一下」弹层的全部孕期工具宫格(#appsGrid), 首页 bento 恢复原样 (v26090722)
2026-09-08 01:51:09 +08:00
90f28b8ec9
首页工具区替换为已上架应用宫格: /api/mp/apps 动态渲染(排除授权示例), 点击带身份跳转, 前8个+展开收起 (v26090719)
2026-09-08 01:42:03 +08:00
91db3873ee
mama-box: 退出按钮改卡片右上角绝对定位 + 仅已登录(userName)时显示 (v26090707)
2026-09-07 23:42:30 +08:00
3b52b1c222
mama-box: 我的页 — 去掉右上角商城图标; 退出登录改资料卡右上角图标按钮; 商城卡去掉甄选好物角标 (v26090706)
2026-09-07 23:31:22 +08:00
24d5e07cd0
mama-box: 我的页加「退出登录」按钮 + 授权卡改 navigateTo 授权页(替代非实时 postMessage)
2026-09-07 21:09:57 +08:00
0a199f352c
box_app: serve mama-box at /mama-box/ (align with mp.yizhezhe.com subdirectory apps); mount /mama-box, drop /apps+/assets; _img_url & init_mamabox URL → /mama-box/
2026-09-07 15:47:42 +08:00