Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

translate renderToNodeStream #545

Merged
merged 2 commits into from
May 8, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 21 additions & 21 deletions src/content/reference/react-dom/server/renderToNodeStream.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@ title: renderToNodeStream

<Deprecated>

This API will be removed in a future major version of React. Use [`renderToPipeableStream`](/reference/react-dom/server/renderToPipeableStream) instead.
Bu API, React'in gelecekteki bir ana sürümünde kaldırılacaktır. Bunun yerine [`renderToPipeableStream`](/reference/react-dom/server/renderToPipeableStream) kullanın.

</Deprecated>

<Intro>

`renderToNodeStream` renders a React tree to a [Node.js Readable Stream.](https://nodejs.org/api/stream.html#readable-streams)
`renderToNodeStream` bir React ağacını bir [Node.js Okunabilir Akışı](https://nodejs.org/api/stream.html#readable-streams)'na dönüştürür.

```js
const stream = renderToNodeStream(reactNode)
Expand All @@ -22,11 +22,11 @@ const stream = renderToNodeStream(reactNode)

---

## Reference {/*reference*/}
## Başvuru dokümanı {/*reference*/}

### `renderToNodeStream(reactNode)` {/*rendertonodestream*/}

On the server, call `renderToNodeStream` to get a [Node.js Readable Stream](https://nodejs.org/api/stream.html#readable-streams) which you can pipe into the response.
Sunucuda, yanıtı aktaracağınız bir [Node.js Okunabilir Akışı](https://nodejs.org/api/stream.html#readable-streams) elde etmek için `renderToNodeStream`'i çağırın.

```js
import { renderToNodeStream } from 'react-dom/server';
Expand All @@ -35,45 +35,45 @@ const stream = renderToNodeStream(<App />);
stream.pipe(response);
```

On the client, call [`hydrateRoot`](/reference/react-dom/client/hydrateRoot) to make the server-generated HTML interactive.
İstemci tarafında, sunucu tarafında oluşturulan HTML'i etkileşimli hale getirmek için [`hydrateRoot`](/reference/react-dom/client/hydrateRoot) fonksiyonunu çağırın.

[See more examples below.](#usage)
[Buradan daha fazla örnek görebilirsiniz.](#usage)

#### Parameters {/*parameters*/}
#### Parametreler {/*parameters*/}

* `reactNode`: A React node you want to render to HTML. For example, a JSX element like `<App />`.
* `reactNode`: HTML'e dönüştürmek istediğiniz bir React düğümü. Örneğin, `<App />` gibi bir JSX öğesi.

* **optional** `options`: An object for server render.
* **optional** `identifierPrefix`: A string prefix React uses for IDs generated by [`useId`.](/reference/react/useId) Useful to avoid conflicts when using multiple roots on the same page. Must be the same prefix as passed to [`hydrateRoot`.](/reference/react-dom/client/hydrateRoot#parameters)
* **isteğe bağlı** `options`: Sunucu renderı için bir obje.
* **isteğe bağlı** `identifierPrefix`: [`useId`](/reference/react/useId) tarafından oluşturulan kimlikler için React'ın kullandığı string ön eki. Aynı sayfada birden çok kök kullanırken çakışmaları önlemek için kullanışlıdır. [`hydrateRoot`](/reference/react-dom/client/hydrateRoot#parameters)'e iletilen ön ek ile aynı olmalıdır.

#### Returns {/*returns*/}
#### Dönüş değeri {/*returns*/}

A [Node.js Readable Stream](https://nodejs.org/api/stream.html#readable-streams) that outputs an HTML string.
Bir HTML string'i üreten bir [Node.js Okunabilir Akışı.](https://nodejs.org/api/stream.html#readable-streams)

#### Caveats {/*caveats*/}
#### Uyarılar {/*caveats*/}

* This method will wait for all [Suspense boundaries](/reference/react/Suspense) to complete before returning any output.
* Bu yöntem, herhangi bir çıkış vermeden önce tüm [Suspense sınırlarının](/reference/react/Suspense) tamamlanmasını bekler.

* As of React 18, this method buffers all of its output, so it doesn't actually provide any streaming benefits. This is why it's recommended that you migrate to [`renderToPipeableStream`](/reference/react-dom/server/renderToPipeableStream) instead.
* React 18'den itibaren bu yöntem, tüm çıktılarını arabelleğe alır, bu nedenle aslında hiçbir akış avantajı sağlamaz. Bu nedenle, bunun yerine [`renderToPipeableStream`](/reference/react-dom/server/renderToPipeableStream)'e geçmeniz önerilir.

* The returned stream is a byte stream encoded in utf-8. If you need a stream in another encoding, take a look at a project like [iconv-lite](https://www.npmjs.com/package/iconv-lite), which provides transform streams for transcoding text.
* Dönen akış, utf-8 ile kodlanmış bir bayt akışıdır. Başka bir kodlama ile akışa ihtiyacınız varsa, [iconv-lite](https://www.npmjs.com/package/iconv-lite) gibi bir projeye bakabilirsiniz, bu projeler metin dönüştürme akışlarını sağlar.

---

## Usage {/*usage*/}
## Kullanım {/*usage*/}

### Rendering a React tree as HTML to a Node.js Readable Stream {/*rendering-a-react-tree-as-html-to-a-nodejs-readable-stream*/}
### Bir React ağacını HTML olarak bir Node.js Okunabilir Akışına dönüştürmek {/*rendering-a-react-tree-as-html-to-a-nodejs-readable-stream*/}

Call `renderToNodeStream` to get a [Node.js Readable Stream](https://nodejs.org/api/stream.html#readable-streams) which you can pipe to your server response:
Sunucu yanıtınıza bağlayabileceğiniz [Node.js Okunabilir Akışını](https://nodejs.org/api/stream.html#readable-streams) almak için `renderToNodeStream`'i çağırın:

```js {5-6}
import { renderToNodeStream } from 'react-dom/server';

// The route handler syntax depends on your backend framework
// Rota işleyici sözdizimi arka uç çatınıza bağlı olarak değişir
app.use('/', (request, response) => {
const stream = renderToNodeStream(<App />);
stream.pipe(response);
});
```

The stream will produce the initial non-interactive HTML output of your React components. On the client, you will need to call [`hydrateRoot`](/reference/react-dom/client/hydrateRoot) to *hydrate* that server-generated HTML and make it interactive.
Akış, React bileşenlerinizin başlangıçta etkileşimsiz HTML çıktısını üretecek. İstemci tarafında, bu sunucu tarafında oluşturulan HTML'i *hydrate* etmek ve etkileşimli hale getirmek için [`hydrateRoot`](/reference/react-dom/client/hydrateRoot) yöntemini çağırmanız gerekecek.
Loading