Skip to content

PageBlockInspector 自身的 chrome 字面量未过 t() —— 列表「Add」按钮、Remove aria-label、Invalid JSON、两个 placeholder 在 zh-CN 下仍是英文 #3963

Description

@yinlianghui

发现于 #3913 的实施过程(围栏外,PR 未夹带)。未认领,交 PM triage。

机制

#3913 修的是 previews/block-config.ts 的 curated 属性 label —— 那些 label 是表数据,现在存翻译键、渲染处过 t()。本单是另一条机制:PageBlockInspector.tsx 自己 JSX 里的硬编码英文,从来不是 block-config 的 label,#3913 的面覆盖不到。

packages/app-shell/src/views/metadata-admin/inspectors/PageBlockInspector.tsx(行号以 PR #3913 合并后为准):

  • :109 FieldListField 的行添加按钮 —— Plus 图标后跟裸 Add
  • :457 string-list 分支的行添加按钮 —— 同一个裸 Add
  • :101 / :450 aria-label="Remove"(两处)
  • :475 aria-label="Remove item"
  • :147 setError('Invalid JSON') —— 注意 i18n.ts已有 engine.form.invalidJson,且 translateValidationMessage() 已经把 'invalid json' 映射到它,所以这里是把现成的键绕过去了
  • :61 placeholder="snake_case object":98 placeholder="field name"

影响

zh-CN 管理员今天就会看到,且恰好在 #3913 修好的同一个面板里:打开任意 record:details 区块的检查器,分区标题、字段名全是中文,分区内每个字段列表下面的添加按钮却是英文 Add。同一面板两种语言 —— 与 #3913 描述的症状同类,只是残留在 chrome 上。

不是 dormant:record:details.sections.fields(field-list)、record:highlights.fieldsobject-grid.columnsrecord:quick_actions.actionNames(string-list)等都会渲染出这个按钮。

已被钉住,不会静默

PR #3913inspectors/PageBlockInspector.i18n.test.tsx 里有一条用例 leaves only the known non-block-config chrome in English (objectui#3958) —— 它断言这些英文仍然存在。所以本单落地时那条用例会精确翻红,必须一并收紧,两个修复不会静默重叠。

边界与去重

一处取舍提醒

两个 Add 按钮语义上是「给这个列表加一行」,与 #3913 里 array 分支的 addLabel(每个块自己命名,如「添加分区」)不同粒度。要决定是给它们一个通用键(engine.inspector.pageBlock.field.addRow 之类)还是像 addLabel 那样按位置命名 —— 前者够用且这两处本就没有 per-field 文案,倾向前者,但属契约面小决定,本单只记录现象。

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions