template.js

Bir şablon dosyası, her bir alt düzeni veya sayfayı sarması bakımından bir düzene benzer. Rotalar arasında kalıcı olan ve durumu koruyan düzenlerin aksine, şablonlar gezinme sırasında her bir alt düzen için yeni bir örnek oluşturur.

app/template.tsx
export default function Template({ children }: { children: React.ReactNode }) {
  return <div>{children}</div>
}
template.js special file

Daha az yaygın olmakla birlikte, isterseniz bir düzen yerine bir şablon seçebilirsiniz:

Props

children (required)

Şablon bileşenleri bir children prop kabul etmeli ve kullanmalıdır. template bir düzen ve alt öğeleri arasında oluşturulur. Örneğin:

Output
<Layout>
  {/* Note that the template is given a unique key. */}
  <Template key={routeParam}>{children}</Template>
</Layout>

Bildiğim iyi oldu:

  • Varsayılan olarak, template bir Sunucu Bileşenidir, ancak "use client" yönergesi aracılığıyla bir İstemci Bileşe ni olarak da kullanılabilir.
  • Bir kullanıcı template adresini paylaşan rotalar arasında gezindiğinde, bileşenin yeni bir örneği monte edilir, DOM öğeleri yeniden oluşturulur, durum korunmaz ve etkiler yeniden senkronize edilir.

Version History

VersionChanges
v13.0.0template introduced.