Skip to content

React Translation Guide

Xleine edited this page Dec 5, 2024 · 22 revisions

以下规范基于 中文文案排版指南 修改而成。翻译前,请认真熟记此文档,以免提交不符合规范的翻译。

PR 标题

  • 首次翻译英文文档的 PR 标题应统一为 docs(cn): translate section/title into Chinese

    例如:docs(cn): translate reference/react/useId into Chinese

    这是因为这个 PR 会链接到任务列表,形式应保持统一。这也便于后来者辨认出第一次翻译的提交是哪一个

  • 其他 PR 标题应遵循一般的 commit 规范,标题中至少说明此次 PR 的具体目的。在标题中完整写出文件路径是非必须的

    例如:fix typoschore: uniform docs' format

  • PR 标题一般不要出现中文

何时需要标注原文

在当前页首次出现不常见的词组或容易有歧义的内容时,需要在大括号中表明原文。

脱围机制(Escape Hatches)

脱围机制

斜体与加粗

  • 如果原文出现了斜体,翻译为中文时统一修改为加粗,英文则保持不变。

    更好的解决方法是将 searchOptions 对象声明移到 useMemo 计算函数的 内部

    更好的解决方法是将 searchOptions 对象声明移到 useMemo 计算函数的 内部

空格问题

  • 全角(中文)符号与其他字符间不加空格(空格问题在 Markdown 渲染没有问题的情况下优先遵循此原则),半角(英文)符号与其他字符间加空格 注:`` 为半角符号

    如果组件实现了 getSnapshotBeforeUpdate() 生命周期(不常用),则它的返回值将作为 componentDidUpdate() 的第三个参数“snapshot”参数传递。否则此参数将为 undefined。

    如果组件实现了getSnapshotBeforeUpdate()生命周期(不常用),则它的返回值将作为componentDidUpdate()的第三个参数 “snapshot” 参数传递。否则此参数将为 undefined。

  • 中文与英文之间加空格

    从 16.8.0 开始,React 在以下模块中包含了 React Hook 的稳定实现:

    从 16.8.0 开始,React在以下模块中包含了React Hook的稳定实现:

  • 中文与数字之间加空格

    从 16.8.0 开始,React 在以下模块中包含了 React Hook 的稳定实现:

    从16.8.0开始,React 在以下模块中包含了 React Hook 的稳定实现:

  • 数字与单位之间加空格

    今天达到了 39.5 °C 的高温

    今天达到了 39.5°C 的高温

  • 链接与正文之间要有空格

    这是 React Hook 中关于 useState 的介绍。你可以在 函数组件 中使用 state

    这是React Hook中关于 useState 的介绍。你可以在函数组件中使用 state

  • 单句加粗 的词语、短语,为了凸显其强调作用和专有地位,以及字体的相关考虑,需要在前后加上空格。相关讨论

我是 示例

我是示例

标点符号

  • 所有半角(英文)符号,请转为使用全角(中文)符号
  • 数字使用半角字符
  • -- 破折号,请使用全角 —— 替代
  • 缩写与原文保持一致
  • 中文标点符号和汉字之间的位置不要有 Markdown 标记。应通过标点符号外移避免渲染问题,无法解决的,通过添加空格解决渲染问题。

**示例:**文档...

**示例**:文档...
  • 超链接与加粗文本 末尾 的标点符号无论原文如何,一律移至超链接外。

[React 中文文档非常棒!](https://github.com/reactjs/zh-hans.react.dev)

[React 中文文档非常棒](https://github.com/reactjs/zh-hans.react.dev)

行数问题

  • 请保持与原文在内容上行行对应
  • 如果原文多行,请尽量与原文保持行数一致;如无法保持,使用空行补齐
  • 如原文空行有问题,请与原文保持一致,不要擅自修改。(请提 PR 给原文)

英文大小写与单复数

此条所确定的原则应与简体中文互联网上的表达习惯一致,欢迎就相关问题提出 discussion。

  • 保留英文原文时,因原文其作为段首字母、标题大写的,调整为小写,否则与原文保持一致。

  • 保留英文原文时,单复数参见 术语表 中的具体说明,术语表中没有列出的,一般使用单数。

    如 refs 在中文翻译中应该使用单数 ref,因为术语表中是单数。 如 props 的单复数和原文一致,即原文复数则复数,原文单数则单数。因为术语表中两者都有。

人称

不使用“您”而使用“你”。

代码

  • 代码中的注释与内容一并翻译。但请注意,当出现多行注释时,烦请 尽量保持中英顺序对应,如果实在无法做到再考虑调整语序。

  • 非注释的内容一般也认为需要翻译,如 <button>Submit</button> 应当翻译为 <button>提交</button>

译注

  • 译注引用采用上角标的形式,译注请放置在文章最下方

    当你试图渲染一个 DOM 元素,并且它的 aria-* 属性不存在于 WAI<sup><a href="#note1">[1]</a></sup>-ARIA<sup><a href="#note2">[2]</a></sup> [规范](https://www.w3.org/TR/wai-aria-1.1/#states_and_properties)中时,会出现 invalid-aria-prop 警告。
    
    
    **译注:**
    
    <a name="note1"></a> [1] WAI:Web Accessibility Initiative,Web 无障碍计划<br>
    <a name="note2"></a> [2] ARIA:Accessible Rich Internet Application,无障碍丰富互联网应用程序