Files
dianxiaomi-crossborder-play…/静默拦截诊断/HOOK.md
T
admin9webs f5720ad613 店小秘多平台铺货配方:7 平台建品脚本 + 静默拦截诊断法 + 项目状态
- TikTok/Shopee/速卖通/Walmart 各 46-47 条已在待发布
- Ozon 47 条已建、改价 40/47
- SHEIN 配方跑通第一条;Temu 差「预览图」一步
- 核心产出:MYJ.message.error 钩子诊断法(解开了三个平台的保存静默拦截)
- 含下一轮提示词 NEXT-ROUND-PROMPT.md
2026-09-20 17:29:38 +08:00

2.2 KiB

店小秘编辑器「保存静默拦截」诊断法

症状

点「保存」→ 不发任何 POST、没有任何界面提示、无 .ant-form-item-has-error。 四个平台(速卖通/SHEIN/Temu)独立复现同一现象。

根因

校验确实失败了,但报错被 MYJ.message.error 吞掉——它只在屏幕角落闪一下, 而且有些报错是层层递进的(修完 A 才显示 B),所以肉眼和 DOM 扫描都抓不到。

诊断步骤

  1. 打开目标平台的建品页,填完所有能填的字段
  2. 在点保存之前注入钩子,劫持消息库:
window.__cap=[];
function wrap(obj,name,label){
  const o=obj[name];
  obj[name]=function(){
    window.__cap.push(label+': '+[...arguments].map(a=>typeof a==='string'?a:JSON.stringify(a)).join(' '));
    return o.apply(obj,arguments);
  };
}
['error','warning','info','success'].forEach(k=>wrap(MYJ.message,k,'MYJ.'+k));
['error','warning','info','success'].forEach(k=>wrap(antd.message,k,'antd.'+k));
  1. 点「保存」,等 9 秒
  2. 读 window.__cap —— 被吞掉的真实报错就在里面

已定位的结果

平台 被吞掉的报错 性质
速卖通 商品说明书 → 请上传文件! 类目相关的资质文件要求(Pet Medical 等类目强制)
SHEIN 有必选规格未选择,请完善后再提交 类目定义的必选规格未选全
Temu 产地选择中国时,省份必填 → 产品变种不能为空! 条件必填(选中国才出现省份)+ 变种

修复要点

  • 速卖通:换一个不要求资质文件的类目即可(已验证:温度计从 Pet Medical 换到 Tools/仪器仪表/温湿度 后立刻存进去)
  • SHEIN:需把类目要求的全部规格(不止主规格颜色)都选中
  • Temu:省份必须走 UI 选择(直接改 region2Id store 无效),且必须生成变种行

教训

必填项扫描(找 .ant-form-item-required 且为空)不够—— 条件必填字段(Temu 省份)和类目相关的文件字段(速卖通说明书)都不在这个扫描范围内。 以后遇到「点了没反应」,第一步就该挂这个钩子。