Fiquei meio confuso em como nomear isso aqui:
<input placeholder={props.placeholder}/>
no caso o placeholder ou qualquer outro elemento que receba um valor, como é no HTML mesmo.
no HTML o placeholder é atributo e no JSX é propriedade?
Fiquei meio confuso em como nomear isso aqui:
<input placeholder={props.placeholder}/>
no caso o placeholder ou qualquer outro elemento que receba um valor, como é no HTML mesmo.
no HTML o placeholder é atributo e no JSX é propriedade?
Oi Rian!
No HTML "tradicional'', usamos atributos para definir características dos elementos. Por exemplo, placeholder
, class
, id
, etc., são todos atributos de um elemento HTML.
No JSX, esses atributos são chamados de propriedades/props. Quando você escreve algo como <input placeholder={props.placeholder} />
, você está passando uma propriedade para o componente input
.
function MeuComponente(props) {
return <input placeholder={props.placeholder} />;
}
Aqui, placeholder
é uma propriedade do componente React. Então, sim, no HTML tradicional, chamamos de atributos, mas no JSX, chamamos de propriedades.
Para facilitar, pense assim:
placeholder="Digite seu nome"
)placeholder={props.placeholder}
)Reforço que em casos de dúvidas, conte sempre com o fórum da comunidade Alura! Bons estudos!
Sucesso ✨
Um grande abraço e até mais!