Skip to content

[console 17.0.0] record-header 自定义动作偶发丢 recordId:页头存在两种 DOM 变体,其中一种不注入请求体,端点回 missing_record_id #5176

Description

@baozhoutao

一句话

记录详情页头的自定义动作(record_header 挂载)点击后,平台负责往请求体注入当前记录 id(recordId)——但页头渲染存在两种 DOM 变体,其中一种变体下不注入,端点收到的请求体没有 recordId,回 missing_record_id。用户侧表现为「偶尔点一下没反应,再点一次就好」。

环境

  • @objectstack/*@17.0.0(GA);下游业务项目(os-project-titanwind-ehr,私有)真机 Console 实测发现
  • 与对象、与动作配置无关:该项目所有 record_header 自定义动作(多个对象、同一标准配方)均受影响

量化复现

同一颗页头【删除】动作按钮,同一记录页,连点 10 次:

  • 9 次:请求体带 recordId,动作正常执行;
  • 1 次:请求体不带recordId → 服务端 missing_record_id;
  • 关键相关性:失败那次抓包时,页头 DOM 层级与成功时不同(两种变体与是否注入一一对应);
  • 换一次页面渲染即恢复。

疑似与记录页头的 hydration/半加载窗口有关(页头在加载早期与稳定后渲染树不同,注入逻辑只挂在其中一种变体上)。

期望

两种页头渲染形态下,record_header 动作的 recordId 注入行为一致;或在拿不到记录 id 时禁用按钮而非发出残缺请求。

备注

下游项目按「平台能覆盖的问题不自造补丁」原则未做任何绕行;抓包与 DOM 对照证据存于该项目取证分支,需要可提供摘录。

Metadata

Metadata

Assignees

Labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions