团购页进度条停在一大截,文案写着已拼 87%,运营拉出名单只有十二个人,页面上的剩余名额也是假的。进度条却一直没动。碰到这种情况,我一般先确认改动有没有真的生效。
原因不复杂,进度条宽度和文案都是静态样式,前端没有从接口取参团人数。即便取了,分母写的是固定目标值,活动改规则后没同步。
碰到「团购进度条」这类问题,我习惯先把当前配置原样备份一份,改坏了立刻换回来,不用现场推。报错里带路径的,先去看那个路径在不在、权限对不对。
$joined = (int) $group['joined']; $target = max(1, (int) $group['target']); $pct = min(100, round($joined / $target * 100)); echo '<span style="width:' . $pct . '%"></span>';
同一份配置存在多处的,先确认改的是被加载的那一份。
具体做法是,进度值由服务端计算后输出,人数和目标数分别取真实字段;前端只负责把百分比转成宽度,别在 CSS 里写死;人数为零时进度条留一点宽度,避免看起来像加载失败。
最后用这个标准收尾,后台加一个参团名额,刷新后进度条和百分比同时变化,人数与名单一致。
