"Çocuklar" bile nedir?
React belgeleri props.children
, 'genel kutuları' temsil eden ve çocuklarını önceden tanımayan bileşenler üzerinde kullanabileceğinizi söylüyor . Benim için bu, işleri gerçekten netleştirmedi. Eminim bazıları için bu tanım çok mantıklı ama benim için olmadı.
Ne işethis.props.children
yaradığına dair basit açıklamam, bir bileşeni çağırırken açılış ve kapanış etiketleri arasına eklediğiniz her şeyi görüntülemek için kullanılmasıdır.
Basit bir örnek:
Bir bileşen oluşturmak için kullanılan durum bilgisiz işlevin bir örneğini burada bulabilirsiniz. Yine, bu bir işlev olduğundan, this
anahtar kelime yoktur, bu yüzden sadece kullanınprops.children
const Picture = (props) => {
return (
<div>
<img src={props.src}/>
{props.children}
</div>
)
}
Bu bileşen, <img>
bazılarını alan props
ve sonra görüntülenen bir içerir {props.children}
.
Bu bileşen her çağrıldığında {props.children}
, aynı zamanda görüntülenecektir ve bu, bileşenin açılış ve kapanış etiketleri arasında olanlara bir referanstır.
//App.js
render () {
return (
<div className='container'>
<Picture key={picture.id} src={picture.src}>
//what is placed here is passed as props.children
</Picture>
</div>
)
}
Bileşeni bir kendi kendine kapanma etiketiyle <Picture />
çağırmak yerine, tam açılış ve kapanış etiketlerini <Picture> </Picture>
çağırırsanız, arasına daha fazla kod yerleştirebilirsiniz.
Bu, <Picture>
bileşeni içeriğinden ayırır ve daha yeniden kullanılabilir hale getirir.
Referans: React'in props.children'ına hızlı bir giriş