renderToStaticNodeStream
renderToStaticNodeStream
interaktif olmayan bir React ağacını Okunabilir Node.js Akımına render etmenize olanak tanır.
const stream = renderToStaticNodeStream(reactNode)
Başvuru dokümanı
renderToStaticNodeStream(reactNode)
Sunucuda, Okunabilir Node.js Akışı elde etmek için renderToStaticNodeStream
fonksiyonunu çağırınız.
import { renderToStaticNodeStream } from 'react-dom/server';
const stream = renderToStaticNodeStream(<Page />);
stream.pipe(response);
Buradan daha fazla örnek görebilirsiniz.
Akım, React bileşenlerinizin etkileşimli olmayan HTML çıktılarını üretecektir.
Parametreler
reactNode
: HTML’e render etmek istediğiniz bir React düğümü. Örneğin,<Sayfa />
gibi bir JSX elemanı.
Geri Döndürür
HTML string’i döndüren bir Okunabilir Node.js Akımı döndürür. Ortaya çıkan HTML istemcide sulanamaz.
Uyarılar
-
renderToStaticNodeStream
çıktısı sulanamaz. -
Bu yöntem, herhangi bir çıktı döndürmeden önce tüm Askıya alma sınırlarının tamamlanmasını bekler.
-
React 18’den itibaren, bu yöntem tüm çıktısını tamponlar, aslında bu nedenle herhangi bir akış avantajı sağlamaz.
-
Döndürülen akış utf-8 olarak kodlanmış bir byte akışıdır. Başka bir kodlamada akışa ihtiyacınız varsa, metni dönüştürmek için dönüştürme akışları sağlayan iconv-lite gibi bir projeye göz atabilirsiniz.
Kullanım
Bir React ağacını statik HTML olarak Okunabilir Node.js Akışına dönüştürme
Sunucu yanıtınıza aktarabileceğiniz bir Okunabilir Node.js Akımı elde etmek için renderToStaticNodeStream
fonksiyonunu çağırabilirsiniz:
import { renderToStaticNodeStream } from 'react-dom/server';
// Route handler syntax backend çatınıza bağlıdır
app.use('/', (request, response) => {
const stream = renderToStaticNodeStream(<Page />);
stream.pipe(response);
});
Akım, React bileşenlerinizin etkileşimli olmayan ilk HTML çıktısını üretecektir.