scroll-view垂直时间轴卡顿需加scroll-y="true"和enhanced="true",节点用纯view包裹,主竖线改绝对定位,h5加transform: translatez(0);物流数据须校验time字段有效性,uni.createanimation需每次新建实例;间距统一用px配合uni.upx2px换算;微信小程序需开通物流助手并传真实单号及官方编码。

scroll-view做垂直时间轴为什么卡顿
直接用 scroll-view 渲染几十条物流节点,滑动不跟手、iOS跳帧、节点错位——不是数据问题,是渲染策略没调对。
- 必须加
scroll-y="true"+enhanced="true",否则 H5/小程序默认不启用增强滚动能力 - 每个节点用纯
view包裹,禁用rich-text和带远程src的image,它们会触发异步加载+重排,拖慢滚动帧率 - 时间轴主竖线别写
border-left,改用绝对定位的空view+height: 100%,减少重绘区域 - H5 端仍卡?给
scroll-view加style="transform: translateZ(0)"强制 GPU 加速
物流数据格式不对导致动画失效
想用 uni.createAnimation 让节点逐条弹出,结果只动一次或完全不动——大概率是后端返回的时间字段不能被 Date 正确解析,或者数组顺序没按时间倒序。
- 前端必须逐条校验:
new Date(item.time).getTime()返回NaN就过滤或兜底为Date.now() -
uni.createAnimation的step()必须在循环里每次新建实例,复用同一个动画对象会导致状态残留 - 动画推荐用
opacity+translateY组合,避免scale,iOS 下易失真 - 小程序真机调试时,
animationAPI 只在onReady后可用,别在created阶段提前调
跨端节点间距怎么统一
margin-top: 30rpx 在 H5 刚好,在 App 上挤成一团,小程序又太松——rpx 在非微信环境换算规则不同,App 默认走 px。
- 所有间距统一用
px,配合uni.upx2px(60)动态换算(例如返回 App/H5 的实际像素值) - 节点容器设
display: flex+flex-direction: column,用gap控制间距(注意小程序基础库 ≥ 2.21.0) - 别用
line-height撑高节点,改用padding,否则字号缩放时高度失控
微信小程序调用 uni.getLogistics 报 90080001
不是代码写错了,是平台侧配置没到位。这个错误码明确指向“未开通物流助手”或“单号不合法”,和前端逻辑无关。
- 确认小程序管理后台已开通「物流助手」功能,且完成企业认证(个体户不支持)
- 单号必须是快递公司官网可查的真实单号,
SF123456789CN这类模拟号会直接报错 - 调用前检查
provider是否为weixin,支付宝等其他平台不能混用该 API -
expressCode必须传官方编码(如sf、zto),不能传中文名或全称











