Olá! Neste tutorial, eu vou te explicar sobre o Next.js 14 e suas novas funcionalidades de Server Components e Actions. Vamos começar!
O Next.js 14 é a última atualização do popular framework de React. Ele traz algumas novidades importantes, sendo as mais chamativas os Server Components e Actions. Vamos ver o que são essas novas funcionalidades e como você pode utilizá-las em seu projeto.
Server Components:
Os Server Components no Next.js 14 permitem que você divida seu aplicativo em partes que são renderizadas do lado do servidor. Isso significa que você pode ter componentes que são renderizados apenas uma vez no servidor e então são enviados para o cliente para serem usados em todo o aplicativo.
Para criar um Server Component, basta adicionar a tag especial
// MyComponent.jsx
import { ServerComponent } from 'next/server';
export default function MyComponent() {
return (
<ServerComponent>
{() => <h1>Hello, Server Component!</h1>}
</ServerComponent>
);
}
Dessa forma, o componente será renderizado no servidor e enviado para o cliente de forma eficiente. Isso pode melhorar o desempenho do seu aplicativo, especialmente em casos de renderização pesada.
Actions:
As Actions são outra novidade do Next.js 14 que permitem que você crie funções do lado do servidor que podem ser chamadas do cliente. Isso é útil para tarefas como processamento de formulários, chamadas a APIs externas ou qualquer outra operação que precisa ser feita no servidor.
Para criar uma Action, basta adicionar a tag
// MyAction.jsx
import { Action } from 'next/server';
export default function MyAction() {
return (
<Action handler={doSomethingOnServer}>
{({ run }) => (
<button onClick={run}>Execute Action!</button>
)}
</Action>
);
}
// Função para ser executada no servidor
function doSomethingOnServer() {
console.log('Action executada no servidor!');
}
Dessa forma, quando o botão for clicado, a função doSomethingOnServer será executada no servidor. Isso permite que você tenha controle sobre o que acontece do lado do servidor a partir do cliente, de forma segura e eficiente.
Com essas novas funcionalidades de Server Components e Actions, o Next.js 14 proporciona uma experiência de desenvolvimento mais robusta e escalável. Experimente essas funcionalidades em seu projeto e veja como elas podem melhorar a performance e a segurança de sua aplicação.
Espero que esse tutorial tenha sido útil para você! Se tiver alguma dúvida ou precisar de mais detalhes, fique à vontade para perguntar. Obrigado por ler e boa sorte em seus projetos com o Next.js 14!
A OFERTA que TODO MUNDO não para de pedir será liberada: https://rseat.in/ENt90Atzj
video maravilhoso kkkkkk parabens mano. de hoje que eu to estudando next e sua didatica foi incrivel, parabéns.
@Rocketseat, muito bom! pfv, qual extensao vc usa pro resultado do console.log aparecer na linha em q vc chamou?
muito bom o conteudo … fiz o codigo , e tentei fazer um botao excluir meus slugs, mas por estar do lado do servidor deu ruim, aguem aqui pode me ajudar
O erro em 16:00 pra frente é que quando utiliza Server Action, não precisa especificar method e encType no formulario. Vc especificou method e não precisa, o nextjs já trata isso
Está dando SSRF no semgrep-sast ao usar um fetch no auth.ts. Estou me autenticando usando API externa com o provider Credentials…
Eu posso usar esse Json serve para buscar dados? tenho um array de objetos cheio de dados e na página tenho que usar alguns desses dados dependendo do cliente. Ou melhor usar uma API local? Obs: se eu usar o Json serve na hospedagem vai funcionar normalmente em produção?
ótimo conteúdo, achei muito massa!
posso utilizar uma função para fazer CRUD no banco usando o use-server?
Vim pegar um resumo de next, porque já trabalhei com react e fiz projetos pessoais com next pois na minha empresa era sem ele. Ai mudei de empresa e hoje nao uso mais React, só que não queria perder tudo de bagagem que eu tinha né, ai to aqui pra tentar pegar um resumo daas coisas hoje.
Sem condições cara :,( ….
Ele ja falou sei la quantos termos novos, e olha que nem parei de trabalhar com react faz tanto tempo. Eu percebi que se eu não quiser perder minha bagagem, vou ter q estudar react de novo como se nunca tivesse visto.
React, não sei os outros framew. pra frontend, está sem condições. É todo dia mil tech nova que surge, ao invés de evoluir oq já existe, acho que acaba sendo por isso que outras linguagens e ecossistemas tipo C# e Java acabam sendo mais maduros.
Obs.: adoro js
Mas ta sendo tanta revolução que daqui a pouco a gente volta pro começo da roda.
mt bom
mano, cara é bom viu, espero um dia esta nesse nivel de conhecimento.
No caso de um login por ex q retorna um token, eu consigo recuperar o retorno ou só mesmo usando api pra fazer assíncrono?
@rocketseat Neste caso (que é similiar ao meu). Temos um servidor API e mais o servidor do Next.js. Usando "server components" não traria uma delay maior, uma vez que cada request do Client será mandada primeiramente para o servidor Next.js e este irá fazer uma request para o servidor API, tendo 2 requisições. Faz sentido usar "server components" e "actions" quando se tem um servidor de API separado?
Cara, que conteúdo bom.
Continua trazendo novidades das ferramentas, por favor!
Qual o nome dessa extensão que mostra o console ?
Utilizando npm run dev funciona perfeitamente, porém, quando rodo o build (npm run build) aparece o seguinte erro: Module not found: Can't resolve 'react-server-dom-webpack/client' .A única diferença é que eu estou utilizando o useFormState do 'react-dom' para o tratamento de erros… Alguém sabe o que pode ser?
Uma pergunta :
a Suspense API representa a mesma coisa que a dynamic API ???
Poderia criar um projeto pra desenvolver um blog com N.Js
18:20 Poderia só fazer um revalidatePath com o nome da rota, muito mais simples.