Fala ai Ramon, tudo bem? Essa diferença é referente ao JavaScript em si e não do React, isso porque uma arrow function com {}
após sua flecha:
const ola = () => {
console.log('Oi')
}
Nesse caso as chaves ({}
) indicam o corpo (body) da função, porem, imagine que você queira retornar um objeto, uma das possiveis maneiras seria:
const retornaUmObjeto = nome => {
return {
meuNome: nome,
}
}
Porém, é possível ter um shorthand para isso, que seria adicionar os parenteses após a flecha:
const retornaUmObjeto = nome => ({
meuNome: nome,
})
Nesse caso a função vai retornar um objeto, similar ao código anterior, porém, não foi necessário abrir o corpo da função a fazer um retorno explicito com o return
.
Espero ter ajudado.