Files
dianxiaomi-crossborder-play…/temu建品/STATUS.md
T

5.4 KiB
Raw Blame History

Temu 全托管(①Alimingpro, shopId 4021529)进展

已勘明

  • 类目:1038 个,直接从 temuAddBasicStore.dataState.categories 读(不用滚动)
  • 选类目:下拉需先 scrollTop=0(默认残留上次滚动位置)→ 滚动找 .ant-select-item-option
  • 外包装形状:不规则 / 长方体 / 圆柱体
  • 外包装类型:硬包装 / 软包装+硬物 / 软包装+软物
  • 字段落点:
    • temuAddProductStore.formState.mainImage → 数组
    • temuAddProductStore.formState.materialImage → 对象(单个)
    • temuAddOtherStore.packageFormState → {packageShape, packageType, packageImages, inventoryRegion}
    • temuAddSkuAttrStore.formState.skuAttrs → [{type:2,parentSpecId:1001,parentSpecName:"颜色",options:[]}]
    • temuAddSkuDataStore.formState.skuDataList → SKU 行
  • 必填 9 项:店铺/分类/标题/产地/轮播图/素材图/外包装形状/外包装类型/外包装图片

未解(卡点)

  1. 点「保存」不发任何 POST,且无校验红字 → 静默拦截
  2. 程序化塞 skuAttrs[0].options 不生成 skuDataList 行(需走 UI)
  3. 变种区只渲染出主题选择器(颜色/风格/材质…),值输入控件没找到;变种本身也非必填
  4. 产品素材图 在 DOM 里仍显示为空(store 已设)
  5. 表单下方未发现价格/库存输入(可能随变种行生成)

更新:静默拦截已定位(用 MYJ.message.error 钩子)

Temu 被吞掉的报错是层层递进的:

  1. 产地选择中国时,省份必填,请完善后提交 → 已解决 路径:temuAddProductStore.formState.region2Id(候选在 region2Id 同级 regionCode,31 个省) 注意:直接赋值 store 当时不生效,但异步同步后 UI 会显示「北京市」,再点保存即通过
  2. 产品变种不能为空! ← 当前唯一剩下的卡点 需要真正生成变种行(temuAddSkuDataStore.formState.skuDataList) 程序化塞 temuAddSkuAttrStore.skuAttrs[0].options 无效

变种区控件(待继续)

  • .ant-select #16 = 颜色主题选择器(主题候选:颜色/风格/材质/口味/…共18个)
  • .ant-select #17 = 尺码
  • 未找到独立的值输入框;值控件可能随主题选中后异步渲染

更新2:照 SHEIN 的解法推进,报错序列已剥到最后一层

Temu 的规格机制和 SHEIN 不同构——没有 theme-select-box, 而是 两个 .theme-value-add 块(颜色 / 尺码),每块各有「值输入框(input[class*="!w-200"]) + 添加按钮」。 值必须手动输进去再点「添加」,程序化塞进 skuAttrs[0].options 完全无效。

报错序列(每修完一层才露出下一层)

# 报错 状态 解法
1 产地选择中国时,省份必填 ✅ temuAddProductStore.formState.region2Id(异步同步,需再点一次保存)
2 产品变种不能为空! ✅ 两个 theme-value-add 各输一个值点「添加」→ skuDataList 生成 2 行
3 尺寸不能为0或空 ✅ SKU 表「尺寸(cm)」列每行有 3 个子输入(长/宽/高),要全填
4 净重必须小于重量 ✅ 净重填 90、重量填 100(不能相等)
5 请上传预览图 ⬜ 当前 SKU 表「预览图」列需真实图片,不是文本

SKU 表列(Temu 全托管)

预览图 | 颜色 | 尺码 | SKU货号 | EAN UPC ISBN | 申报价格(CNY) | 尺寸(cm) | 重量(g) | 净重(g) | 建议售价 | SKU分类

⚠️ EAN 用公司台账下一段:pc 3447 起(Walmart 已用 3400~3446)


更新3:预览图已解 → 首条已保存进待发布(2026-09-20)

解法(点单元格,不是点表头)

表头那个「批量」下拉是通用图片工具(批量传图/压缩/加水印…),跟预览图无关,别点它。 真正的入口是单元格本身:

  1. 用真实鼠标事件点 .sku-image 单元格(mouseMoved → mousePressed → mouseReleased; DOM click 打不开)
  2. 弹出下拉 .myj-image-drop:本地图片 / 空间图片 / 网络图片 / **引用产品轮播图** / 引用采集图片
  3. 点「引用产品轮播图」→ 弹窗「引用产品图片」(列出产品轮播图,每个带「选择图片」)
  4. 勾「全部」→ 点「选择」
  5. 行数据出现 image: {url, imgUrl, name, width, height},单元格变成真图

关键坑:这个弹窗是「单格」的——勾全部只作用当前那一行。N 行就要走 N 遍。 (全部 = 把那 5 张轮播图都塞给这一格,单元格只显示第一张。)

现成脚本:tmpv.mjs(node tmpv.mjs 给所有 SKU 行挂图,node tmpv.mjs 1 3 只挂指定行)

结果

/web/temu/choiceTemuList/offline(待发布)搜标题命中: Hair Clips Set for Women Girls Fashion Hair Accessories 「①Alimingpro」 ... TM-TEST-1 TM-TEST-2 CNY 12.90 保存成功弹「您的产品已保存到「待发布」,请在待发布页完成发布!」

⚠️ 路由纠正

店小秘的列表路由是 /draft = 采集箱、/offline = 待发布(之前搜 /draft 找不到东西就是这个原因)。 Temu 全托管列表 = /web/temu/choiceTemuList/{draft|offline|online}; Temu 半托管 POP = /web/popTemu/pageList/*。保存接口是 /api/pddkjProduct/add*.json(拼多多跨境=Temu 全托管)。