Depende um pouco da abordagem do framework que você está usando para mesclar as estratégias e também do entendimento de como cada framework funciona. Por exemplo, no Next.js, se você não estiver fazendo cache/revalidate de uma requisição e não estiver envolvendo um Suspense em volta do componente de servidor que você irá renderizar, ele, por padrão, sempre utilizará SSR para a renderização da página, porque você está explicitando que aquela página precisa ser montada inteiramente no servidor antes de ser renderizada no client. Já no momento em que você envolve o seu componente em um Suspense, o framework interpretará que aquele conteúdo é dinâmico e pode ser renderizado tardiamente. Então, ele faz um pré-renderização de todo o conteúdo estático da página em tempo de build para que a renderização inicial seja rápida e separa o que é componente dinâmico, ou seja, que precisará ser processado no momento da requisição. Assim, quando alguém requisitar sua aplicação, instantaneamente você já receberá o conteúdo estático para ser renderizado no client e, enquanto isso, o seu componente de servidor estará fazendo todo o processo de busca dos dados dinâmicos no server. Quando estiver pronto para ser renderizado, esse conteúdo será streamado para o client side e o novo HTML será renderizado na página, substituindo o fallback que você passou no Suspense para o conteúdo dinâmico. No Astro, há algumas diferenças, mas o fundamento é bem semelhante. No final do dia, para você conseguir saber isso, precisa analisar como a página se comporta ao ser renderizada e, principalmente, ver as requisições que acontecem no momento em que a página está sendo montada. Dessa forma, você consegue identificar o que já veio de forma estática e o restante do conteúdo que foi inserido dinamicamente a partir do servidor.
Estreia do Leo no canal galera! ❤👌
Ajudem dando like, compartilhando e ajudando a divulgar.
\o/
Leozera é mestre demais! Baita conteúdo 🚀
Top demais!!
Conteúdo muito bom!
Top demais!
tem como saber de uma aplicação quais partes são ssg e quais são ssr ?
Depende um pouco da abordagem do framework que você está usando para mesclar as estratégias e também do entendimento de como cada framework funciona. Por exemplo, no Next.js, se você não estiver fazendo cache/revalidate de uma requisição e não estiver envolvendo um Suspense em volta do componente de servidor que você irá renderizar, ele, por padrão, sempre utilizará SSR para a renderização da página, porque você está explicitando que aquela página precisa ser montada inteiramente no servidor antes de ser renderizada no client. Já no momento em que você envolve o seu componente em um Suspense, o framework interpretará que aquele conteúdo é dinâmico e pode ser renderizado tardiamente. Então, ele faz um pré-renderização de todo o conteúdo estático da página em tempo de build para que a renderização inicial seja rápida e separa o que é componente dinâmico, ou seja, que precisará ser processado no momento da requisição. Assim, quando alguém requisitar sua aplicação, instantaneamente você já receberá o conteúdo estático para ser renderizado no client e, enquanto isso, o seu componente de servidor estará fazendo todo o processo de busca dos dados dinâmicos no server. Quando estiver pronto para ser renderizado, esse conteúdo será streamado para o client side e o novo HTML será renderizado na página, substituindo o fallback que você passou no Suspense para o conteúdo dinâmico. No Astro, há algumas diferenças, mas o fundamento é bem semelhante.
No final do dia, para você conseguir saber isso, precisa analisar como a página se comporta ao ser renderizada e, principalmente, ver as requisições que acontecem no momento em que a página está sendo montada. Dessa forma, você consegue identificar o que já veio de forma estática e o restante do conteúdo que foi inserido dinamicamente a partir do servidor.