Skip to content

Commit 42da074

Browse files
robertyingycjcl868
authored andcommitted
docs: add Rendering Elements translations (#40)
1 parent bdfe652 commit 42da074

File tree

1 file changed

+25
-25
lines changed

1 file changed

+25
-25
lines changed

content/docs/rendering-elements.md

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,75 +1,75 @@
11
---
22
id: rendering-elements
3-
title: Rendering Elements
3+
title: 元素渲染
44
permalink: docs/rendering-elements.html
55
redirect_from:
66
- "docs/displaying-data.html"
77
prev: introducing-jsx.html
88
next: components-and-props.html
99
---
1010

11-
Elements are the smallest building blocks of React apps.
11+
元素是构成 React 应用的最小砖块。
1212

13-
An element describes what you want to see on the screen:
13+
元素描述了你在屏幕上想看到的内容。
1414

1515
```js
1616
const element = <h1>Hello, world</h1>;
1717
```
1818

19-
Unlike browser DOM elements, React elements are plain objects, and are cheap to create. React DOM takes care of updating the DOM to match the React elements.
19+
与浏览器的 DOM 元素不同,React 元素是创建开销极小的普通对象。React DOM 会负责更新 DOM 来与 React 元素保持一致。
2020

21-
>**Note:**
21+
>**注意:**
2222
>
23-
>One might confuse elements with a more widely known concept of "components". We will introduce components in the [next section](/docs/components-and-props.html). Elements are what components are "made of", and we encourage you to read this section before jumping ahead.
23+
>你可能会将元素与另一个被熟知的概念——“组件”混淆起来。我们会在[下一个章节](/docs/components-and-props.html)介绍组件。组件是由元素构成的。我们强烈建议你不要觉得繁琐而跳过本章节,应当深入阅读这一章节。
2424
25-
## Rendering an Element into the DOM {#rendering-an-element-into-the-dom}
25+
## 将一个元素渲染为 DOM {#rendering-an-element-into-the-dom}
2626

27-
Let's say there is a `<div>` somewhere in your HTML file:
27+
假设你的 HTML 文件某处有一个 `<div>`
2828

2929
```html
3030
<div id="root"></div>
3131
```
3232

33-
We call this a "root" DOM node because everything inside it will be managed by React DOM.
33+
我们将其称为“根” DOM 节点,因为该节点内的所有内容都将由 React DOM 管理。
3434

35-
Applications built with just React usually have a single root DOM node. If you are integrating React into an existing app, you may have as many isolated root DOM nodes as you like.
35+
仅使用 React 构建的应用通常只有单一的根 DOM 节点。如果你在将 React 集成进一个已有应用,那么你可以在应用中包含任意多的独立根 DOM 节点。
3636

37-
To render a React element into a root DOM node, pass both to `ReactDOM.render()`:
37+
想要将一个 React 元素渲染到根 DOM 节点中,只需把它们一起传入 `ReactDOM.render()`
3838

3939
`embed:rendering-elements/render-an-element.js`
4040

4141
[](codepen://rendering-elements/render-an-element)
4242

43-
It displays "Hello, world" on the page.
43+
页面上会展示出 "Hello, world"
4444

45-
## Updating the Rendered Element {#updating-the-rendered-element}
45+
## 更新已渲染的元素 {#updating-the-rendered-element}
4646

47-
React elements are [immutable](https://en.wikipedia.org/wiki/Immutable_object). Once you create an element, you can't change its children or attributes. An element is like a single frame in a movie: it represents the UI at a certain point in time.
47+
React 元素是[不可变对象](https://en.wikipedia.org/wiki/Immutable_object)。一旦被创建,你就无法更改它的子元素或者属性。一个元素就像电影的单帧:它代表了某个特定时刻的 UI。
4848

49-
With our knowledge so far, the only way to update the UI is to create a new element, and pass it to `ReactDOM.render()`.
49+
根据我们已有的知识,更新 UI 唯一的方式是创建一个全新的元素,并将其传入 `ReactDOM.render()`
5050

51-
Consider this ticking clock example:
51+
考虑一个计时器的例子:
5252

5353
`embed:rendering-elements/update-rendered-element.js`
5454

5555
[](codepen://rendering-elements/update-rendered-element)
5656

57-
It calls `ReactDOM.render()` every second from a [`setInterval()`](https://developer.mozilla.org/en-US/docs/Web/API/WindowTimers/setInterval) callback.
57+
这个例子会在 [`setInterval()`](https://developer.mozilla.org/en-US/docs/Web/API/WindowTimers/setInterval) 回调函数,每秒都调用 `ReactDOM.render()`
5858

59-
>**Note:**
59+
>**注意:**
6060
>
61-
>In practice, most React apps only call `ReactDOM.render()` once. In the next sections we will learn how such code gets encapsulated into [stateful components](/docs/state-and-lifecycle.html).
61+
>在实践中,大多数 React 应用只会调用一次 `ReactDOM.render()`。在下一个章节,我们将学习如何将这些代码封装到[有状态组件](/docs/state-and-lifecycle.html)中。
6262
>
63-
>We recommend that you don't skip topics because they build on each other.
63+
>我们建议你不要跳跃着阅读,因为每个话题都是紧密联系的。
6464
65-
## React Only Updates What's Necessary {#react-only-updates-whats-necessary}
65+
## React 只更新它需要更新的部分 {#react-only-updates-whats-necessary}
6666

67-
React DOM compares the element and its children to the previous one, and only applies the DOM updates necessary to bring the DOM to the desired state.
67+
React DOM 会将元素和它的子元素与它们之前的状态进行比较,并只会进行必要的更新来使 DOM 达到预期的状态。
6868

69-
You can verify by inspecting the [last example](codepen://rendering-elements/update-rendered-element) with the browser tools:
69+
你可以使用浏览器的检查元素工具查看[上一个例子](codepen://rendering-elements/update-rendered-element)来确认这一点。
7070

7171
![DOM inspector showing granular updates](../images/docs/granular-dom-updates.gif)
7272

73-
Even though we create an element describing the whole UI tree on every tick, only the text node whose contents has changed gets updated by React DOM.
73+
尽管每一秒我们都会新建一个描述整个 UI 树的元素,React DOM 只会更新实际改变了的内容,也就是例子中的文本节点。
7474

75-
In our experience, thinking about how the UI should look at any given moment rather than how to change it over time eliminates a whole class of bugs.
75+
根据我们的经验,考虑 UI 在任意给定时刻的状态,而不是随时间变化的过程,能够消灭一整类的 bug。

0 commit comments

Comments
 (0)